結果

問題 No.2601 Very Poor
ユーザー ID 21712
提出日時 2025-04-26 22:47:06
言語 Go
(1.23.4)
結果
AC  
実行時間 106 ms / 2,000 ms
コード長 482 bytes
コンパイル時間 11,414 ms
コンパイル使用メモリ 233,824 KB
実行使用メモリ 7,900 KB
最終ジャッジ日時 2025-04-26 22:47:27
合計ジャッジ時間 16,289 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 34
権限があれば一括ダウンロードができます

ソースコード

diff #

package main

import . "fmt"
import . "os"
import bf "bufio"

func main() {
	rd := bf.NewReader(Stdin)
	var n, x int
	Fscan(rd, &n, &x)
	a := make([]int, n, 2*n)
	for i := range a {
		Fscan(rd, &a[i])
	}
	a = append(a, a...)
	lb, ub, sum, ans := 0, 0, a[0], 0
	for lb < len(a) {
		for lb <= ub && sum > x {
			sum -= a[lb]
			lb++
		}
		ans = max(ans, sum)
		ub++
		if ub >= len(a) {
			break
		}
		sum += a[ub]
		for ub - lb + 1 > n {
			sum -= a[lb]
			lb++
		}
	}
	Println(ans)
}
0