結果
問題 |
No.871 かえるのうた
|
ユーザー |
![]() |
提出日時 | 2021-05-01 11:01:15 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,744 bytes |
コンパイル時間 | 815 ms |
コンパイル使用メモリ | 104,192 KB |
実行使用メモリ | 43,836 KB |
最終ジャッジ日時 | 2024-07-19 18:24:57 |
合計ジャッジ時間 | 6,225 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 6 WA * 43 |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; public class Hello { static void Main() { string[] line = Console.ReadLine().Trim().Split(' '); var n = int.Parse(line[0]); var k = int.Parse(line[1]) - 1; line = Console.ReadLine().Trim().Split(' '); var x = Array.ConvertAll(line, long.Parse); line = Console.ReadLine().Trim().Split(' '); var a = Array.ConvertAll(line, long.Parse); getAns(n, k, x,a); } static void getAns (int n, int k, long[] x , long [] a) { var r = x[k] + a[k]; var L = x[k] - a[k]; var pr = k + 1; var pL = k - 1; var count = 1; var ur = true; var uL = true; while (pr < n && pL >= 0) { if (!uL && !ur) break; if (pr < n) { if (ur) { if (x[pr] <= r) { count++; var nr = x[pr] + a[pr]; if (nr > r) { r = nr; ur = true; } var nL = x[pr] - a[pr]; if (nL < L) { L = nL; uL = true; } } } pr++; } if (pL >= 0) { if (uL) { if (x[pL] <= L ) { count++; var nr = x[pL] + a[pL]; if (nr > r) { r = nr; ur = true; } var nL = x[pL] - a[pL]; if (nL < L) { L = nL; uL = true; } } } pL--; } } Console.WriteLine(count); } }