結果
問題 |
No.871 かえるのうた
|
ユーザー |
|
提出日時 | 2021-04-07 13:25:08 |
言語 | Kotlin (2.1.0) |
結果 |
AC
|
実行時間 | 830 ms / 2,000 ms |
コード長 | 772 bytes |
コンパイル時間 | 14,092 ms |
コンパイル使用メモリ | 438,720 KB |
実行使用メモリ | 94,296 KB |
最終ジャッジ日時 | 2024-11-30 11:08:08 |
合計ジャッジ時間 | 41,086 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 49 |
ソースコード
fun main(){ var (n, k) = readLine()!!.split(" ").map{it.toInt()} val x = readLine()!!.split(" ").map{it.toLong()} val a = readLine()!!.split(" ").map{it.toLong()} k-- var lindex = k var rindex = k var lpos : Long = x[lindex]-a[lindex] var rpos : Long = x[rindex]+a[rindex] while(true){ if(lindex > 0 && lpos <= x[lindex-1]){ lindex-- lpos = Math.min(lpos, x[lindex]-a[lindex]) rpos = Math.max(rpos, x[lindex]+a[lindex]) }else if(rindex+1 < n && x[rindex+1] <= rpos){ rindex++ lpos = Math.min(lpos, x[rindex]-a[rindex]) rpos = Math.max(rpos, x[rindex]+a[rindex]) }else{ break } } println(rindex-lindex+1) }