結果

問題 No.43 野球の試合
コンテスト
ユーザー matsu7874
提出日時 2016-01-01 08:23:54
言語 Python3
(3.14.3 + numpy 2.4.4 + scipy 1.17.1)
コンパイル:
python3 -mpy_compile _filename_
実行:
python3 _filename_
結果
AC  
実行時間 445 ms / 5,000 ms
コード長 742 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 508 ms
コンパイル使用メモリ 20,828 KB
実行使用メモリ 15,484 KB
最終ジャッジ日時 2026-04-07 18:41:29
合計ジャッジ時間 4,037 ms
ジャッジサーバーID
(参考情報)
judge1_1 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 7
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import itertools
N = int(input())
S = [[c for c in input()] for i in range(N)]

best_pos = N
undefined = []
for i in range(0,N):
    for j in range(i+1,N):
        if S[i][j] == '-':
            undefined.append((i,j))
for d in itertools.product('ox',repeat=len(undefined)):
    win = [0 for i in range(N)]
    for i in range(N):
        for j in range(i+1,N):
            if S[i][j] == 'o':
                win[i] += 1
            elif S[i][j] == 'x':
                win[j] += 1
            elif S[i][j] == '-':
                if d[undefined.index((i,j))] == 'o':
                    win[i]+=1
                else:
                    win[j] += 1
    best_pos = min(best_pos, sorted(list(set(win)))[::-1].index(win[0])+1)
print(best_pos)
0