結果
問題 |
No.3166 [Cherry 7th Tune *] 桜の守人
|
ユーザー |
![]() |
提出日時 | 2025-06-01 16:00:57 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 863 bytes |
コンパイル時間 | 402 ms |
コンパイル使用メモリ | 82,748 KB |
実行使用メモリ | 110,596 KB |
最終ジャッジ日時 | 2025-06-14 02:51:44 |
合計ジャッジ時間 | 41,497 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 25 TLE * 1 |
ソースコード
def func(P): R = [] for x in X: l, r = x-P, x+P if l < 0: R.append((l%L, 1)) l = 0 if L < r: R.append((0, 1)) R.append((r%L+0.5, -1)) r = L R.append((l, 1)) if r < L: R.append((r+0.5, -1)) R.sort(key=lambda x:x[0]) if R[0][0] != 0: return False SUM = 0 for i, (n, d) in enumerate(R): SUM += d if (1 <= n or i+1 == len(R) or n < R[i+1][0]) and SUM < K: return False return True for _ in range(int(input())): N, L, K = map(int, input().split()) X = list(map(int, input().split())) left = 0 right = (L+1)//2 while left+1 < right: mid = (left+right)//2 if not func(mid): left = mid else: right = mid print(right)