結果
問題 | No.871 かえるのうた |
ユーザー | k_6101 |
提出日時 | 2019-12-07 18:57:05 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 915 ms / 2,000 ms |
コード長 | 1,764 bytes |
コンパイル時間 | 2,410 ms |
コンパイル使用メモリ | 76,564 KB |
実行使用メモリ | 70,764 KB |
最終ジャッジ日時 | 2023-08-20 09:31:42 |
合計ジャッジ時間 | 22,447 ms |
ジャッジサーバーID (参考情報) |
judge11 / judge12 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 122 ms
55,792 KB |
testcase_01 | AC | 122 ms
55,856 KB |
testcase_02 | AC | 122 ms
55,460 KB |
testcase_03 | AC | 130 ms
55,464 KB |
testcase_04 | AC | 128 ms
55,784 KB |
testcase_05 | AC | 128 ms
55,908 KB |
testcase_06 | AC | 127 ms
55,560 KB |
testcase_07 | AC | 132 ms
55,812 KB |
testcase_08 | AC | 192 ms
58,504 KB |
testcase_09 | AC | 199 ms
59,312 KB |
testcase_10 | AC | 177 ms
56,760 KB |
testcase_11 | AC | 184 ms
58,492 KB |
testcase_12 | AC | 345 ms
61,304 KB |
testcase_13 | AC | 214 ms
59,624 KB |
testcase_14 | AC | 915 ms
70,292 KB |
testcase_15 | AC | 778 ms
70,028 KB |
testcase_16 | AC | 795 ms
70,052 KB |
testcase_17 | AC | 774 ms
68,248 KB |
testcase_18 | AC | 388 ms
61,660 KB |
testcase_19 | AC | 774 ms
70,764 KB |
testcase_20 | AC | 264 ms
60,604 KB |
testcase_21 | AC | 509 ms
61,340 KB |
testcase_22 | AC | 128 ms
55,848 KB |
testcase_23 | AC | 129 ms
55,828 KB |
testcase_24 | AC | 122 ms
55,400 KB |
testcase_25 | AC | 186 ms
58,508 KB |
testcase_26 | AC | 243 ms
60,120 KB |
testcase_27 | AC | 281 ms
60,740 KB |
testcase_28 | AC | 127 ms
55,624 KB |
testcase_29 | AC | 581 ms
61,020 KB |
testcase_30 | AC | 601 ms
62,820 KB |
testcase_31 | AC | 192 ms
58,796 KB |
testcase_32 | AC | 604 ms
61,696 KB |
testcase_33 | AC | 757 ms
67,976 KB |
testcase_34 | AC | 406 ms
61,012 KB |
testcase_35 | AC | 598 ms
61,364 KB |
testcase_36 | AC | 680 ms
64,284 KB |
testcase_37 | AC | 568 ms
61,560 KB |
testcase_38 | AC | 762 ms
68,512 KB |
testcase_39 | AC | 746 ms
68,596 KB |
testcase_40 | AC | 454 ms
60,704 KB |
testcase_41 | AC | 121 ms
55,664 KB |
testcase_42 | AC | 450 ms
60,484 KB |
testcase_43 | AC | 123 ms
56,056 KB |
testcase_44 | AC | 131 ms
55,572 KB |
testcase_45 | AC | 181 ms
58,660 KB |
testcase_46 | AC | 121 ms
56,172 KB |
testcase_47 | AC | 120 ms
55,788 KB |
testcase_48 | AC | 120 ms
55,748 KB |
ソースコード
import java.io.InputStream; import java.io.PrintWriter; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Map.Entry; import java.util.PriorityQueue; import java.util.Scanner; import java.util.Set; import java.util.Stack; import java.util.TreeMap; import java.util.TreeSet; import static java.util.Comparator.*; public class Main { public static void main(String[] args) { PrintWriter out = new PrintWriter(System.out); Solver solver = new Solver(System.in, out); solver.solve(); out.close(); } } class Solver { Scanner sc; PrintWriter out; public Solver(InputStream in, PrintWriter out) { sc = new Scanner(in); this.out = out; } // ================================================================== public void solve() { int N = Integer.parseInt(sc.next()); int K = Integer.parseInt(sc.next()) - 1; long[] X = new long[N]; long[] A = new long[N]; for (int i = 0; i < N; i++) { X[i] = Long.parseLong(sc.next()); } for (int i = 0; i < N; i++) { A[i] = Long.parseLong(sc.next()); } int l = K, r = K; long lval = X[K] - A[K]; long rval = X[K] + A[K]; boolean flag = true; while(flag) { flag = false; while(l > 0 && X[l-1] >= lval) { flag = true; l--; lval = Math.min(lval, X[l] - A[l]); rval = Math.max(rval, X[l] + A[l]); } while(r < N - 1 && X[r+1] <= rval) { flag = true; r++; lval = Math.min(lval, X[r] - A[r]); rval = Math.max(rval, X[r] + A[r]); } } out.println(r - l + 1); } }