Algorithm(CodeTree, Python)/완전탐색1

[코드트리 구간 단위로 완전탐색] 특정 구간의 원소 평균값 python

kurooru 2022. 12. 7. 17:24
# n 입력
n = int(input())
# num_list 입력
num_list = list(map(int, input().split()))

# 함수들
# is_ok(a, b)
def is_ok(a, b):

    # curr_sum
    curr_sum = sum(num_list[a:b])

    # curr_avg
    curr_avg = curr_sum / (b-a)

    # 현재 범위 내에서
    for i in range(a, b):
        # 평균값이 존재하면,
        if num_list[i] == curr_avg:
            # 성공
            return True
    
    # 다 돌았는데 없으면 실패
    return False

# 설계
# ans
ans = 0

# 완전 탐색 시작 -> 시작점과 끝점을 선택
for i in range(n):
    for j in range(i+1, n+1):
        # 조건에 만족하면,
        if is_ok(i, j):
            # 정답에 추가
            ans += 1

# 출력
print(ans)