結果
| 問題 |
No.43 野球の試合
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2014-10-20 02:03:11 |
| 言語 | Python2 (2.7.18) |
| 結果 |
AC
|
| 実行時間 | 493 ms / 5,000 ms |
| コード長 | 885 bytes |
| コンパイル時間 | 479 ms |
| コンパイル使用メモリ | 6,912 KB |
| 実行使用メモリ | 6,272 KB |
| 最終ジャッジ日時 | 2024-12-30 09:55:13 |
| 合計ジャッジ時間 | 1,804 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 7 |
ソースコード
N = int(raw_input())
v = [raw_input() for _ in xrange(N)]
d = [[0 for i in xrange(N)] for i in xrange(N)]
c = 0
def getWins(d):
wins = sum(d[0])
lst = sorted(set([sum(d[i]) for i in xrange(N)]))
return len(lst) - lst.index(wins)
for i in xrange(N):
for j in xrange(i + 1, N):
if v[i][j] == "-":
c += 1
mn = 6
for b in xrange(1 << c):
a = 0
for i in xrange(N):
for j in xrange(i + 1, N):
if v[i][j] == "o":
isWin = True
elif v[i][j] == "x":
isWin = False
else:
isWin = ((b >> a) & 1 == 1)
a += 1
if isWin:
d[i][j] = 1
d[j][i] = 0
else:
d[i][j] = 0
d[j][i] = 1
mn = min(mn, getWins(d))
print mn