현제의 현재이야기

[백준/python] 2003 - 수들의 합 2 본문

algorithm

[백준/python] 2003 - 수들의 합 2

현재의 현제 2022. 6. 25. 15:21
n, m = tuple(map(int, input().split()))
a = list(map(int, input().split()))
a.append(0) # 인덱스 참조 리스트 범위 오류 막기 위해서..
result = 0
target = 0
left = 0
right = 1
target =  a[left] + a[right]
while right <= n:
    if a[left] == m:
        result += 1
        left += 1
        right = left + 1
        if right > n:
            break   
        target = a[left] + a[right] 
    elif target < m:
        right += 1
        if right > n:
            break
        target = target + a[right]
    elif target > m:
        left += 1
        right = left + 1
        if right > n:
            break       
        target = a[left] + a[right]
    elif target == m:
        result += 1
        left += 1
        right = left + 1
        if right > n:
            break
        target = a[left] + a[right]
print(result)

너무 더럽지만 .. 성공

Comments