結果
問題 |
No.702 中央値を求めよ LIMITED
|
ユーザー |
![]() |
提出日時 | 2020-03-20 02:22:56 |
言語 | PyPy3 (7.3.15) |
結果 |
MLE
|
実行時間 | - |
コード長 | 561 bytes |
コンパイル時間 | 368 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 64,876 KB |
最終ジャッジ日時 | 2024-12-14 03:46:42 |
合計ジャッジ時間 | 6,075 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | MLE * 2 |
other | MLE * 25 |
ソースコード
#!/usr/bin/ python3.8 import sys read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines seed = int(read()) A = 2140000000 B = 2155000000 lower = 0 upper = 0 nums = [] x, y, z, w = seed, 1, 2, 3 cnt = 0 max_w = 0 mask = (1 << 32) - 1 for _ in range(10 ** 7 + 1): t = x ^ ((x << 11) & mask) x, y, z = y, z, w w = (w ^ (w >> 19)) ^ (t ^ (t >> 8)) if w < A: lower += 1 elif w > B: upper += 1 else: nums.append(w) K = 5 * 10 ** 6 nums.sort() print(nums[K - lower])