結果
問題 | No.5001 排他的論理和でランニング |
ユーザー | 👑 Kazun |
提出日時 | 2020-07-10 17:37:37 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,449 ms / 1,500 ms |
コード長 | 943 bytes |
コンパイル時間 | 223 ms |
実行使用メモリ | 116,696 KB |
スコア | 52,428,738 |
最終ジャッジ日時 | 2020-07-10 17:38:54 |
ジャッジサーバーID (参考情報) |
judge8 / judge10 |
純コード判定しない問題か言語 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 1,415 ms
109,996 KB |
testcase_01 | AC | 1,405 ms
86,680 KB |
testcase_02 | AC | 1,406 ms
88,256 KB |
testcase_03 | AC | 1,408 ms
97,012 KB |
testcase_04 | AC | 1,419 ms
116,180 KB |
testcase_05 | AC | 1,412 ms
93,272 KB |
testcase_06 | AC | 1,405 ms
95,868 KB |
testcase_07 | AC | 1,427 ms
99,368 KB |
testcase_08 | AC | 1,442 ms
116,696 KB |
testcase_09 | AC | 1,435 ms
85,740 KB |
testcase_10 | AC | 1,409 ms
91,488 KB |
testcase_11 | AC | 1,415 ms
95,140 KB |
testcase_12 | AC | 1,408 ms
89,268 KB |
testcase_13 | AC | 1,415 ms
114,164 KB |
testcase_14 | AC | 1,413 ms
100,688 KB |
testcase_15 | AC | 1,410 ms
91,780 KB |
testcase_16 | AC | 1,407 ms
86,684 KB |
testcase_17 | AC | 1,409 ms
90,044 KB |
testcase_18 | AC | 1,418 ms
99,060 KB |
testcase_19 | AC | 1,410 ms
90,124 KB |
testcase_20 | AC | 1,410 ms
89,524 KB |
testcase_21 | AC | 1,411 ms
90,468 KB |
testcase_22 | AC | 1,407 ms
85,992 KB |
testcase_23 | AC | 1,408 ms
87,028 KB |
testcase_24 | AC | 1,409 ms
90,904 KB |
testcase_25 | AC | 1,432 ms
100,156 KB |
testcase_26 | AC | 1,428 ms
96,964 KB |
testcase_27 | AC | 1,430 ms
92,032 KB |
testcase_28 | AC | 1,435 ms
102,296 KB |
testcase_29 | AC | 1,419 ms
102,260 KB |
testcase_30 | AC | 1,424 ms
87,784 KB |
testcase_31 | AC | 1,432 ms
99,860 KB |
testcase_32 | AC | 1,430 ms
89,160 KB |
testcase_33 | AC | 1,427 ms
115,328 KB |
testcase_34 | AC | 1,449 ms
115,532 KB |
testcase_35 | AC | 1,431 ms
96,928 KB |
testcase_36 | AC | 1,437 ms
106,356 KB |
testcase_37 | AC | 1,416 ms
101,444 KB |
testcase_38 | AC | 1,412 ms
89,512 KB |
testcase_39 | AC | 1,417 ms
94,404 KB |
testcase_40 | AC | 1,411 ms
92,464 KB |
testcase_41 | AC | 1,414 ms
87,176 KB |
testcase_42 | AC | 1,417 ms
95,360 KB |
testcase_43 | AC | 1,418 ms
97,344 KB |
testcase_44 | AC | 1,420 ms
104,420 KB |
testcase_45 | AC | 1,418 ms
107,112 KB |
testcase_46 | AC | 1,417 ms
101,220 KB |
testcase_47 | AC | 1,418 ms
92,852 KB |
testcase_48 | AC | 1,413 ms
89,448 KB |
testcase_49 | AC | 1,418 ms
110,832 KB |
ソースコード
from random import sample,randint,random from time import time from math import exp from copy import copy import sys #------------------------------------------------- TIME_LIMIT=1.060 ALPHA=0.025 ep=10**(-10) #------------------------------------------------- def Probability(Delta,Time): if Delta>0: return 1 else: return exp(Delta/(ALPHA*Time+ep)) T=time() N,M=map(int,input().split()) A=list(map(int,input().split())) if N==M: print(" ".join(map(str,A))) sys.exit() P=set(sample(range(N),M)) X=[] Y=[] R=0 for i in range(N): if i in P: X.append(A[i]) R^=A[i] else: Y.append(A[i]) b=R B=copy(R) t=time()-T while t<TIME_LIMIT: x=randint(0,M-1) y=randint(0,N-M-1) S=R^X[x]^Y[y] if random()<=Probability(S-R,t): R=S X[x],Y[y]=Y[y],X[x] if R>b: b=R B=copy(X) t=time()-T print(" ".join(map(str,B)))