結果
問題 | No.832 麻雀修行中 |
ユーザー |
|
提出日時 | 2019-05-24 22:10:25 |
言語 | Python2 (2.7.18) |
結果 |
AC
|
実行時間 | 17 ms / 2,000 ms |
コード長 | 938 bytes |
コンパイル時間 | 308 ms |
コンパイル使用メモリ | 7,040 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-09-17 10:47:07 |
合計ジャッジ時間 | 1,546 ms |
ジャッジサーバーID (参考情報) |
judge6 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 6 |
other | AC * 25 |
ソースコード
#!/usr/bin/python2 # -*- coding: utf-8 -*- # † r = [False] * 9 def check(v, j): if all(x == 0 for x in v): r[j] = True # 順子の探索 for i in xrange(7): if v[i] > 0 and v[i+1] > 0 and v[i+2] > 0: v[i] -= 1; v[i+1] -= 1; v[i+2] -= 1 check(v, j) v[i] += 1; v[i+1] += 1; v[i+2] += 1 # 刻子の探索 for i in xrange(9): if v[i] >= 3: v[i] -= 3 check(v, j) v[i] += 3 s = raw_input() v = [0] * 9 for c in s: v[int(c)-1] += 1 # i をツモる for i in xrange(9): if v[i] == 4: continue v[i] += 1 # k をアタマにする for k in xrange(9): if v[k] >= 2: v[k] -= 2 check(v, i) v[k] += 2 # 七対子の処理 if sum(x == 2 for x in v) == 7: r[i] = True v[i] -= 1 for i, yes in enumerate(r, 1): if yes: print i