結果
| 問題 |
No.1400 すごろくで世界旅行
|
| コンテスト | |
| ユーザー |
convexineq
|
| 提出日時 | 2021-02-20 00:33:52 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 795 bytes |
| コンパイル時間 | 182 ms |
| コンパイル使用メモリ | 81,780 KB |
| 実行使用メモリ | 77,056 KB |
| 最終ジャッジ日時 | 2024-09-17 02:28:22 |
| 合計ジャッジ時間 | 6,382 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 11 TLE * 1 -- * 6 |
ソースコード
def check(i):
p = 1<<i
for k in range(d):
np = 0
for j,sj in enumerate(bin(p)[:1:-1]):
if sj=="1": np |= e[j]
if np == M: return k+1
p = np
return 0
def check2(i,d):
p = 1<<i
for _ in range(d):
np = 0
for j,sj in enumerate(bin(p)[:1:-1]):
if sj=="1": np |= e[j]
if np & MM: return 1
p = np
return 0
import sys
input = sys.stdin.readline
v,d = map(int,input().split())
d = min(4001,d)
e = [int(input()[::-1],2) for _ in range(v)]
M = (1<<v) - 1
T = 0
for i in range(min(100,v)):
c = check(i)
if c==0:
print("No")
exit()
T = max(T,c)
MM = (1<<min(100,v)) - 1
for i in range(100,v):
if not check2(i,d-T):
print("No")
exit()
print("Yes")
convexineq