結果
| 問題 |
No.38 赤青白ブロック
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-02-11 22:36:17 |
| 言語 | PyPy2 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 130 ms / 5,000 ms |
| コード長 | 536 bytes |
| コンパイル時間 | 2,173 ms |
| コンパイル使用メモリ | 75,776 KB |
| 実行使用メモリ | 78,720 KB |
| 最終ジャッジ日時 | 2024-12-23 12:41:56 |
| 合計ジャッジ時間 | 3,782 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 27 |
ソースコード
from itertools import combinations
def judge(s):
if any(s[i] == s[i-Kr] == "R" for i in range(Kr,len(s))): return False
if any(s[i] == s[i-Kb] == "B" for i in range(Kb,len(s))): return False
return True
def rec(s):
global ans
if s in used or len(s) <= ans: return
used.add(s)
if judge(s):
ans = len(s)
return
for i in range(len(s)):
if s[i] == "W": continue
rec(s[:i]+s[i+1:])
Kr,Kb = map(int,raw_input().split())
S = raw_input()
used = set([])
ans = 12
rec(S)
print ans