結果

問題 No.5005 3-SAT
ユーザー titan23titan23
提出日時 2022-06-24 12:29:14
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 1,314 bytes
コンパイル時間 353 ms
スコア 0
最終ジャッジ日時 2022-06-24 12:32:44
合計ジャッジ時間 208,877 ms
ジャッジサーバーID
(参考情報)
judge14 / judge11
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 TLE -
testcase_01 TLE -
testcase_02 TLE -
testcase_03 TLE -
testcase_04 TLE -
testcase_05 TLE -
testcase_06 TLE -
testcase_07 TLE -
testcase_08 TLE -
testcase_09 TLE -
testcase_10 TLE -
testcase_11 TLE -
testcase_12 TLE -
testcase_13 TLE -
testcase_14 TLE -
testcase_15 TLE -
testcase_16 TLE -
testcase_17 TLE -
testcase_18 TLE -
testcase_19 TLE -
testcase_20 TLE -
testcase_21 TLE -
testcase_22 TLE -
testcase_23 TLE -
testcase_24 TLE -
testcase_25 TLE -
testcase_26 TLE -
testcase_27 TLE -
testcase_28 TLE -
testcase_29 TLE -
testcase_30 TLE -
testcase_31 TLE -
testcase_32 TLE -
testcase_33 TLE -
testcase_34 TLE -
testcase_35 TLE -
testcase_36 TLE -
testcase_37 TLE -
testcase_38 TLE -
testcase_39 TLE -
testcase_40 TLE -
testcase_41 TLE -
testcase_42 TLE -
testcase_43 TLE -
testcase_44 TLE -
testcase_45 TLE -
testcase_46 TLE -
testcase_47 TLE -
testcase_48 TLE -
testcase_49 TLE -
testcase_50 TLE -
testcase_51 TLE -
testcase_52 TLE -
testcase_53 TLE -
testcase_54 TLE -
testcase_55 TLE -
testcase_56 TLE -
testcase_57 TLE -
testcase_58 TLE -
testcase_59 TLE -
testcase_60 TLE -
testcase_61 TLE -
testcase_62 TLE -
testcase_63 TLE -
testcase_64 TLE -
testcase_65 TLE -
testcase_66 TLE -
testcase_67 TLE -
testcase_68 TLE -
testcase_69 TLE -
testcase_70 TLE -
testcase_71 TLE -
testcase_72 TLE -
testcase_73 TLE -
testcase_74 TLE -
testcase_75 TLE -
testcase_76 TLE -
testcase_77 TLE -
testcase_78 TLE -
testcase_79 TLE -
testcase_80 TLE -
testcase_81 TLE -
testcase_82 TLE -
testcase_83 TLE -
testcase_84 TLE -
testcase_85 TLE -
testcase_86 TLE -
testcase_87 TLE -
testcase_88 TLE -
testcase_89 TLE -
testcase_90 TLE -
testcase_91 TLE -
testcase_92 TLE -
testcase_93 TLE -
testcase_94 TLE -
testcase_95 TLE -
testcase_96 TLE -
testcase_97 TLE -
testcase_98 TLE -
testcase_99 TLE -
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input = lambda: sys.stdin.readline().rstrip()
import random
from time import time

random.seed = 1
randint = random.randint
random = random.random

#  -----------------------  #

abcpqr = [tuple(map(int, input().split())) for _ in range(2048)]
STIME = time()

li = [[0, 0] for _ in range(2048)]
for a,b,c,p,q,r in abcpqr:
  li[a][p] += 1
  li[b][q] += 1
  li[c][r] += 1

def make_ans_init() -> list:
  ans = [-1] * 2048
  for a,b,c,p,q,r in abcpqr:
    if ans[a] != -1 or ans[b] != -1 or ans[c] != -1:
      continue
    ans[a] = p
    ans[b] = q
    ans[c] = r
  for i in range(2048):
    if ans[i] == -1:
      if li[i][0] < li[i][1]:
        ans[i] = 1
      else:
        ans[i] = 0 
  return ans

def eval_ans(ans) -> int:
  ret = 0
  for a,b,c,p,q,r in abcpqr:
    if ans[a] == p and ans[b] == q and ans[c] == r:
      ret += 1
  return ret

def make_ans_yamanobori(ans):
  preans = ans[:]
  for _ in range(5):
    indx = randint(0, 2047)
    ans[indx] = 1 - ans[indx]
  return preans

def main():
  ans = make_ans_init()
  vestscore = eval_ans(ans)
  while time()-STIME < 1.9:
    nans = make_ans_yamanobori(ans)
    score = eval_ans(nans)
    if score > vestscore:
      ans = nans[:]
      vestscore = score
  print(''.join(map(str, reversed(ans))))
  print(vestscore, file=sys.stderr)

main()
0