코테준비/알고리즘

백준 #2559 수열

아놀드금자 2023. 6. 4. 17:14
728x90

1차시도: 2중 for 문을 사용했더니 시간초과가 떴다

-> 개선: for문을 하나만 쓰고 이전의것을 빼고 다음것을 더하는 방식으로 수정

 

2차시도: 틀렸습니다

-> 개선: maxnum의 기본 값을 0으로 설정했었는데 최대값이 음수일수도 있기 때문에 maxnum = now(초기값)로 수정

 

 

 

num, seqe = map(int, input().split())
temp = list(map(int, input().split()))
leng = len(temp)

now = sum(temp[:seqe])
maxnum = now

for i in range(1,leng-seqe+1):
    now = now + temp[i+seqe-1] - temp[i-1]
    maxnum = max(maxnum, now)


print(maxnum)
728x90

'코테준비 > 알고리즘' 카테고리의 다른 글

#2178 미로탐색  (0) 2023.07.27
2차원 리스트를 90도 회전하는 함수  (0) 2023.07.08
키패드누르기  (0) 2023.06.17
파이썬알고리즘책 - 그리디  (0) 2023.04.24
백준 #10871  (0) 2020.08.01