|
| 1 | +""" |
| 2 | +# slide window , ํฌ ํฌ์ธํฐ |
| 3 | +-์ฐ์๋ ๋ ์ง์ ์จ๋ ํฉ ์ค ์ต๋๊ฐ ์ถ๋ ฅ = goal |
| 4 | +- sum(temp[s:e]) ๊ฐ์ ํ๋ฒ์ฉ ์ฌ๋ผ์ด๋ฉ์ผ๋ก ํฉ์ ๊ตฌํ๋ฉด ์๊ฐ ์ด๊ณผ ๋ฐ์ |
| 5 | +- window ๋ฒ์ ๋ด start ์ end ํฌ์ธํธ ๊ฐ์ ๋นผ๊ณ , ๋ํ๋ ์์ผ๋ก ์ ์ฒด ํฉ ๊ตฌํ๊ธฐ |
| 6 | +# flow |
| 7 | +1. temp ๋ฆฌ์คํธ ์
๋ ฅ ๋ฐ๊ธฐ |
| 8 | +-window size =k , N : ๋ ์ง |
| 9 | +2. window ๋ฒ์์ ํด๋นํ๋ ๋ฆฌ์คํธ ํฉ ์ค ์ต๋๊ฐ ๊ตฌํ๊ธฐ |
| 10 | +next_window = ์ด์ window - ์ + ๋ค |
| 11 | +=> sliding winodw์ ํตํด window ๋ด ๋งจ์๊ณผ ๋งจ ๋ค ๊ฐ๋ง ๊ตฌํด์ ๋ํ๊ณ ๋นผ๋ฉด ๋ฒ์๋ด ์ดํฉ ๊ตฌํ ์ ์๋ค. |
| 12 | +
|
| 13 | +""" |
| 14 | +import sys |
| 15 | +input = sys.stdin.readline |
| 16 | +#0. ์ ์ฒด ์ผ์ = N , ์ฐ์ ์ผ์= K , |
| 17 | +N , k = map(int,input().split()) |
| 18 | +temp = list(map(int, input().split())) |
| 19 | + |
| 20 | +# 1. ์ฒซ window ๋ฒ์ ์ด๊ธฐํ |
| 21 | +sum_tmp = sum(temp[0:k]) # ์ด๊ธฐ window ๋ด ๋ฆฌ์คํธ์ ํฉ |
| 22 | +max_sum = sum_tmp # ์ต๋๊ฐ์ window ํฉ ์ด๊ธฐ๊ฐ์ผ๋ก ์ค์ |
| 23 | +# 2. ํฌ ํฌ์ธํฐ (s,e)์ ์ด๋ํ์ฌ window ๋ฒ์ ํฉ ๊ตฌํ๊ธฐ |
| 24 | +# e :์๋ก์ด window ๋ฒ์์ ๋ค์ด๊ฐ๋ ๊ฐ |
| 25 | +# s :์๋ก์ด window ๋ฒ์์์ ๋น ์ง๋ ๊ฐ |
| 26 | +for e in range(k, N): |
| 27 | + s = e-k # 0 n-k |
| 28 | + sum_tmp = sum_tmp - temp[s] + temp[e] # ์๋ก์ด window ๋ฒ์ ๋ด์ ํฉ |
| 29 | + max_sum = max(max_sum , sum_tmp) # |
| 30 | + |
| 31 | +print(max_sum) |
0 commit comments