https://www.acmicpc.net/problem/2506
풀이
쉬운 문제이다, 각 문제가 연속해서 옳은 정답인 경우 증가하고, 틀린 문제가 있다면 0점으로 초기화 하여, 누적합이 되지 않도록 하는 문제이다.
단순히 for문으로 O(N) 시간 복잡도로 문제를 해결할 수 있다.
코드
# 백준 2506 - 점수계산
# 분류 : 구현
N = int(input())
scores = list(map(int, input().split()))
answer = 0
score = 0
for i in scores :
if i == 1 :
score += 1
answer += score
else :
score = 0
print(answer)