【累積和メニュー】> FINAL問題【連続する N 個の和の最大値】 連続する N 個の和の最大値 4 (paizaランク C 相当) [難易度: 1377 ±29]
※リンク先へ移動するためには[paiza]へのログインが必要です。
1 行目に整数 N, K が与えられます。
2 行目に N 個の整数 a_0, a_1, a_2, ..., a_(N-1) が与えられます。
連続する K 個の整数の和の最大値を、累積和を使うことで求め、一行で出力してください。
入力値(例)
10 3
1 2 3 4 5 6 7 8 9 10
出力値(例)
27
解答例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php list($n, $k) = explode(" ", trim(fgets(STDIN))); $a = explode(" ", trim(fgets(STDIN))); $sum[0] = 0; for ($i=0; $i<$n; $i++) { $sum[$i+1] = $sum[$i]+$a[$i]; } //print_r($sum); $max_sum = 0; for ($i=0; $i<$n-$k+1; $i++) { $max_sum = max($max_sum, $sum[$i+$k]-$sum[$i]); } echo $max_sum; ?> |