結果
問題 | No.1090 ソーシャルディスタンス / Social Distance |
ユーザー | neko_the_shadow |
提出日時 | 2020-07-09 12:50:10 |
言語 | Java21 (openjdk 21) |
結果 |
WA
|
実行時間 | - |
コード長 | 3,195 bytes |
コンパイル時間 | 2,244 ms |
コンパイル使用メモリ | 85,436 KB |
実行使用メモリ | 57,540 KB |
最終ジャッジ日時 | 2024-10-06 17:07:00 |
合計ジャッジ時間 | 10,109 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 65 ms
37,672 KB |
testcase_01 | AC | 63 ms
37,676 KB |
testcase_02 | AC | 283 ms
51,868 KB |
testcase_03 | WA | - |
testcase_04 | WA | - |
testcase_05 | AC | 118 ms
41,280 KB |
testcase_06 | WA | - |
testcase_07 | AC | 257 ms
50,532 KB |
testcase_08 | WA | - |
testcase_09 | AC | 262 ms
50,736 KB |
testcase_10 | AC | 293 ms
51,032 KB |
testcase_11 | WA | - |
testcase_12 | AC | 269 ms
50,456 KB |
testcase_13 | WA | - |
testcase_14 | AC | 379 ms
57,288 KB |
testcase_15 | WA | - |
testcase_16 | WA | - |
testcase_17 | AC | 95 ms
40,084 KB |
testcase_18 | WA | - |
testcase_19 | AC | 253 ms
50,572 KB |
testcase_20 | AC | 236 ms
47,892 KB |
testcase_21 | AC | 267 ms
50,464 KB |
testcase_22 | AC | 67 ms
37,680 KB |
testcase_23 | AC | 63 ms
38,056 KB |
testcase_24 | AC | 385 ms
57,540 KB |
ソースコード
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.io.UncheckedIOException; import java.lang.reflect.Array; import java.util.ArrayDeque; import java.util.Arrays; import java.util.Deque; import java.util.Objects; import java.util.regex.Pattern; import java.util.stream.Collectors; public class Main { public void exec() { int n = stdin.nextInt(); int d = stdin.nextInt(); Deque<Integer> ans = new ArrayDeque<>(); ans.addLast(0); int diff = 0; for (int i = 0; i < n - 1; i++) { int a = stdin.nextInt(); int b = ans.peekLast(); if (b <= a && b + d <= a) { ans.addLast(a+diff); } else { ans.addLast(b+d); diff += b + d - a; } } stdout.println(ans.stream().map(Objects::toString).collect(Collectors.joining(" "))); } private static final Stdin stdin = new Stdin(); private static final Stdout stdout = new Stdout(); public static void main(String[] args) { new Main().exec(); stdout.flush(); } public static class Stdin { private BufferedReader stdin; private Deque<String> tokens; private Pattern delim; public Stdin() { stdin = new BufferedReader(new InputStreamReader(System.in)); tokens = new ArrayDeque<>(); delim = Pattern.compile(" "); } public String nextString() { try { if (tokens.isEmpty()) { String line = stdin.readLine(); delim.splitAsStream(line).forEach(tokens::addLast); } return tokens.pollFirst(); } catch (IOException e) { throw new UncheckedIOException(e); } } public int nextInt() { return Integer.parseInt(nextString()); } public double nextDouble() { return Double.parseDouble(nextString()); } public long nextLong() { return Long.parseLong(nextString()); } } public static class Stdout { private PrintWriter stdout; public Stdout() { stdout = new PrintWriter(System.out, false); } public void printf(String format, Object ... args) { stdout.printf(format, args); } public void println(Object ... objs) { String line = Arrays.stream(objs).map(this::deepToString).collect(Collectors.joining(" ")); stdout.println(line); } private String deepToString(Object o) { if (o == null || !o.getClass().isArray()) { return Objects.toString(o); } int len = Array.getLength(o); String[] tokens = new String[len]; for (int i = 0; i < len; i++) { tokens[i] = deepToString(Array.get(o, i)); } return "{" + String.join(",", tokens) + "}"; } public void flush() { stdout.flush(); } } }