結果
問題 | No.173 カードゲーム(Medium) |
ユーザー | Mao-beta |
提出日時 | 2024-03-23 00:24:52 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 2,959 ms / 3,000 ms |
コード長 | 1,772 bytes |
コンパイル時間 | 282 ms |
コンパイル使用メモリ | 81,908 KB |
実行使用メモリ | 83,200 KB |
最終ジャッジ日時 | 2024-09-30 12:49:52 |
合計ジャッジ時間 | 33,473 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 2,957 ms
77,696 KB |
testcase_01 | AC | 2,959 ms
82,432 KB |
testcase_02 | AC | 2,957 ms
82,432 KB |
testcase_03 | AC | 2,956 ms
82,432 KB |
testcase_04 | AC | 2,956 ms
82,176 KB |
testcase_05 | AC | 2,958 ms
80,256 KB |
testcase_06 | AC | 2,956 ms
79,872 KB |
testcase_07 | AC | 2,955 ms
79,488 KB |
testcase_08 | AC | 2,957 ms
79,360 KB |
testcase_09 | AC | 2,957 ms
83,200 KB |
ソースコード
import sys import math import bisect from heapq import heapify, heappop, heappush from collections import deque, defaultdict, Counter from functools import lru_cache from itertools import accumulate, combinations, permutations, product sys.setrecursionlimit(1000000) MOD = 10 ** 9 + 7 MOD99 = 998244353 input = lambda: sys.stdin.readline().strip() NI = lambda: int(input()) NMI = lambda: map(int, input().split()) NLI = lambda: list(NMI()) SI = lambda: input() SMI = lambda: input().split() SLI = lambda: list(SMI()) EI = lambda m: [NLI() for _ in range(m)] from random import randint import time def main(): start = time.time() N, Pa, Pb = SMI() N = int(N) Pa += "0" * (5 - len(Pa)) Pb += "0" * (5 - len(Pb)) Pa = int(Pa.replace(".", "")) Pb = int(Pb.replace(".", "")) A = NLI() B = NLI() def trial(): HA = A[:] HB = B[:] sa = 0 sb = 0 for _ in range(N): HA.sort() HB.sort() ar = randint(1, 1000) if len(HA) == 1 or ar <= Pa: a = HA[0] HA.pop(0) else: idx = randint(1, len(HA)-1) a = HA[idx] HA.pop(idx) br = randint(1, 1000) if len(HB) == 1 or br <= Pb: b = HB[0] HB.pop(0) else: idx = randint(1, len(HB) - 1) b = HB[idx] HB.pop(idx) if a > b: sa += a+b else: sb += a+b return sa > sb total = 0 win = 0 while time.time() - start < 2.9: total += 1 win += int(trial()) print(win / total) if __name__ == "__main__": main()