結果
| 問題 |
No.832 麻雀修行中
|
| コンテスト | |
| ユーザー |
vwxyz
|
| 提出日時 | 2024-04-07 22:13:29 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,249 ms / 2,000 ms |
| コード長 | 796 bytes |
| コンパイル時間 | 403 ms |
| コンパイル使用メモリ | 82,352 KB |
| 実行使用メモリ | 82,028 KB |
| 最終ジャッジ日時 | 2024-10-01 04:47:23 |
| 合計ジャッジ時間 | 12,902 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 6 |
| other | AC * 25 |
ソースコード
import itertools
def check(A):
N=len(A)
if N==0:
return True
if N==3:
A=sorted(A)
return {b-a for a,b in zip(A,A[1:])} in ({0},{1})
if N==14:
for i in range(N):
for j in range(i+1,N):
if A[i]==A[j] and check([A[k] for k in range(N) if not k in (i,j)]):
return True
A=sorted(A)
if all(a==b for a,b in zip(A[::2],A[1::2])) and len(set(A))==7:
return True
else:
for tpl in itertools.combinations(range(N),3):
if check([A[i] for i in tpl]) and check([A[k] for k in range(N) if not k in tpl]):
return True
return False
S=[int(s) for s in input()]
for ans in range(1,10):
if check(S+[ans]) and S.count(ans)<=3:
print(ans)
vwxyz