結果
| 問題 |
No.2207 pCr検査
|
| コンテスト | |
| ユーザー |
👑 tatyam
|
| 提出日時 | 2022-07-13 01:24:15 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 508 ms / 3,000 ms |
| コード長 | 685 bytes |
| コンパイル時間 | 240 ms |
| コンパイル使用メモリ | 82,232 KB |
| 実行使用メモリ | 134,912 KB |
| 最終ジャッジ日時 | 2024-07-02 18:42:29 |
| 合計ジャッジ時間 | 11,337 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 30 |
ソースコード
import sys
import math
input = sys.stdin.readline
k = int(input())
N = [tuple(map(int, input().split())) for _ in range(k)]
lgN = sum(math.log(p) * e for p, e in N)
P = N[-1][0]
lg = 0.0
err = math.inf
R = -1
for i in range(P // 2):
lg += math.log(P - i) - math.log(i + 1)
if err > abs(lg - lgN):
err = abs(lg - lgN)
R = i + 1
def check(R):
for p, e in N:
def f(x):
ans = 0
while True:
x //= p
if x == 0:
return ans
ans += x
if e != f(P) - f(P - R) - f(R):
return
exit(print(P, R))
check(R)
check(R - 1)
check(R + 1)
print(-1, -1)
tatyam