結果
問題 |
No.2694 The Early Bird Catches The Worm
|
ユーザー |
|
提出日時 | 2024-03-22 22:47:56 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 585 bytes |
コンパイル時間 | 1,961 ms |
コンパイル使用メモリ | 195,924 KB |
最終ジャッジ日時 | 2025-02-20 12:17:20 |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 WA * 1 |
other | AC * 17 WA * 55 |
ソースコード
#include <bits/stdc++.h> using namespace std; int main () { using ll = long long; int N; ll H; cin >> N >> H; ll ans = 0; std::vector<ll> A(N), B(N); for (auto& a : A) cin >> a; for (auto& b : B) cin >> b; int r = 0; ll hsum = 0; ll asum = 0; ll bsum = 0; for (int l = 0; l < N; l ++) { while (r < N) { ll nh = hsum + (r - l + 1) * B[r]; if (nh > H) { break; } else { hsum = nh; asum += A[r]; bsum += B[r]; r ++; } } ans = max(ans, asum); if (l < r) { asum -= A[l]; hsum -= bsum; bsum -= B[l]; } } cout << ans << endl; }