結果
問題 |
No.871 かえるのうた
|
ユーザー |
|
提出日時 | 2019-08-30 23:20:19 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 752 bytes |
コンパイル時間 | 487 ms |
コンパイル使用メモリ | 64,836 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2024-11-22 03:17:07 |
合計ジャッジ時間 | 3,577 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 20 WA * 29 |
ソースコード
#include <iostream> const int MAXN = 112345; long long X[MAXN]; long long A[MAXN]; int main() { int N, K; std::cin >> N >> K; --K; for (int i = 0; i < N; ++i) { std::cin >> X[i]; } for (int i = 0; i < N; ++i) { std::cin >> A[i]; } int li = K; int ri = K; long long lv = X[K] - A[K]; long long rv = X[K] + A[K]; bool upd = true; while (upd) { upd = false; if (0 < li && lv <= X[li - 1]) { --li; lv = std::min(lv, X[li] - A[li]); rv = std::max(rv, X[li] + A[li]); upd = true; } if (ri < N - 1 && X[ri + 1] <= rv) { ++ri; lv = std::max(lv, X[ri] - A[ri]); rv = std::max(rv, X[ri] + A[ri]); upd = true; } } std::cout << ri - li + 1 << std::endl; }