結果
| 問題 |
No.1004 サイコロの実装 (2)
|
| コンテスト | |
| ユーザー |
integer
|
| 提出日時 | 2020-05-02 15:59:06 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,133 bytes |
| コンパイル時間 | 2,133 ms |
| コンパイル使用メモリ | 81,876 KB |
| 実行使用メモリ | 150,500 KB |
| 最終ジャッジ日時 | 2024-12-30 07:18:42 |
| 合計ジャッジ時間 | 47,635 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 24 TLE * 14 |
ソースコード
class Player:
def __init__(self, name):
self.name = name
self.black = 0
self.white = 0
self.pos = 0
def forward(self, x):
self.pos += x
if self.pos % 2:
self.black += 1
else:
self.white += 1
def getpoint(self):
return min(self.black, self.white)
def main():
a, b, x0, n = map(int, input().split())
ans = solve(a, b, x0, n)
print(*ans)
def solve(a, b, x, n):
m = 2 ** 32 - 1
takahashi, aoki = Player('takahashi'), Player('aoki')
for _ in range(n):
x = rand(a, b, x, m)
takahashi.forward(saikoro(x))
x = rand(a, b, x, m)
aoki.forward(saikoro(x))
return takahashi.getpoint(), aoki.getpoint()
def rand(a, b, x, m):
return (a * x + b) & m
def saikoro(x):
return x % 6 + 1
def test():
n = 4
a, b, x0, m= map(int, input('a b x0 m\n').split())
x = [x0 for _ in range(n * 2 + 1)]
for i in range(n * 2):
x[i + 1] = rand(a, b, x[i], m)
print(*['x{}:{}'.format(i, x) for i, x in enumerate(x)], sep = '\n')
if __name__ == '__main__':
main()
integer