結果
| 問題 |
No.3166 [Cherry 7th Tune *] 桜の守人
|
| コンテスト | |
| ユーザー |
Kude
|
| 提出日時 | 2025-05-30 23:17:25 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,024 ms / 2,000 ms |
| コード長 | 863 bytes |
| コンパイル時間 | 437 ms |
| コンパイル使用メモリ | 82,420 KB |
| 実行使用メモリ | 122,880 KB |
| 最終ジャッジ日時 | 2025-05-30 23:17:52 |
| 合計ジャッジ時間 | 25,580 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 26 |
ソースコード
for _ in range(int(input())):
n, l, k = map(int, input().split())
x = sorted(map(int, input().split()))
lb = 0
ub = (l + 1) // 2
while ub - lb > 1:
c = (lb + ub) // 2
evs = []
now = 0
for xi in x:
if 0 <= xi - c:
evs.append((xi - c, -1))
else:
evs.append((xi - c + l, -1))
now += 1
if xi + c < l:
evs.append((xi + c, 1))
else:
evs.append((xi + c - l, 1))
now += 1
evs.sort()
ok = now >= k
if c == 171:
print(x, now)
print(*evs, sep='\n')
for t, sub in evs:
now -= sub
if now < k:
ok = False
if ok:
ub = c
else:
lb = c
print(ub)
Kude