반응형
(주의) 정답은 올바르게 잘 나오는데 시간초과가 발생합니다. 추후 수정하겠습니다!
문제
N개의 수로 된 수열 A[1], A[2], …, A[N] 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합 A[i]+A[i+1]+…+A[j-1]+A[j]가 M이 되는 경우의 수를 구하는 프로그램을 작성하시오.
정답
import sys
sys.stdin = open('input.txt', 'rt')
n, m = map(int, input().split())
a = list(map(int, input().split()))
current = 0
cnt = 0
for i in range(len(a)):
if a[i] == m:
cnt += 1
else:
current = a[i]
for j in range(i+1, len(a)):
current += a[j]
if current == m:
cnt += 1
break
elif current > m:
break
print(cnt)
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[파이썬] 백준 5622번: 다이얼 (0) | 2020.09.08 |
---|---|
[파이썬] 백준 1475번 <방 번호> (0) | 2020.05.09 |
[파이썬] 백준 1157번 <단어의 개수> (0) | 2020.05.09 |
[파이썬] 백준 1920번 <수 찾기> (0) | 2020.05.06 |
[파이썬] 백준 10804번: 카드 역배치 (0) | 2020.04.30 |