結果
問題 |
No.2803 Bocching Star
|
ユーザー |
![]() |
提出日時 | 2025-07-20 23:27:00 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 678 ms / 2,000 ms |
コード長 | 581 bytes |
コンパイル時間 | 878 ms |
コンパイル使用メモリ | 82,368 KB |
実行使用メモリ | 135,772 KB |
最終ジャッジ日時 | 2025-07-20 23:27:16 |
合計ジャッジ時間 | 15,632 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 35 |
ソースコード
N, S = map(int, input().split()) P = list(map(int, input().split())) xs = [(p, i) for i, p in enumerate(P)] xs.sort() res = set() if len(xs) == 1: res.add(xs[0][1]) elif len(xs) > 1: a = xs[0][0] b = xs[1][0] if a+S < b: res.add(xs[0][1]) a = xs[-2][0] b = xs[-1][0] if a+S < b: res.add(xs[-1][1]) if len(xs) > 2: for i in range(1, N-1): a = xs[i-1][0] b = xs[i][0] c = xs[i+1][0] if a+S < b and b+S < c: res.add(xs[i][1]) ans = sorted(res) print(len(ans)) print(*[x+1 for x in ans])