結果
問題 |
No.1274 楽しい格子点
|
ユーザー |
![]() |
提出日時 | 2020-10-30 23:36:04 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,147 bytes |
コンパイル時間 | 178 ms |
コンパイル使用メモリ | 82,032 KB |
実行使用メモリ | 76,440 KB |
最終ジャッジ日時 | 2024-07-22 03:14:53 |
合計ジャッジ時間 | 5,096 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 33 WA * 24 |
ソースコード
A, B = map(int, input().split()) A = abs(A) B = abs(B) if A == 0 or B == 0: if A == 0 and B == 0: print(0.5) else: m = max(A, B) S = 1/2 for i in range(102, 2, -1): if (i - 1) % m == 0: S += ((i - 1) // m + 1) / pow(i, i) print(S) else: S = 0 if A > 100 and B > 100: print(0.25) else: L = [[0 for _ in range(101)] for __ in range(101)] F = [0 for _ in range(101)] for i in range(-50, 50): for j in range(-50, 50): for k in range(-50, 50): for l in range(-50, 50): if i % 2 == l % 2 and j % 2 == k % 2: p = 1 + i * A + j * B q = 1 + k * A + l * B if 0 < p < 100 and 0 < q < 100 and p + q < 100: L[p][q] = 1 for i in range(100, 0, -1): for j in range(100, 0, -1): if i + j <= 100: F[i+j] += L[i][j] for i in range(100, 1, -1): S += F[i] / pow(i, i) print(S)