結果

問題 No.43 野球の試合
ユーザー kohei2019kohei2019
提出日時 2021-03-12 16:46:52
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 317 ms / 5,000 ms
コード長 964 bytes
コンパイル時間 386 ms
コンパイル使用メモリ 82,048 KB
実行使用メモリ 78,356 KB
最終ジャッジ日時 2024-04-22 04:20:22
合計ジャッジ時間 1,852 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 47 ms
53,504 KB
testcase_01 AC 49 ms
53,376 KB
testcase_02 AC 46 ms
53,504 KB
testcase_03 AC 47 ms
53,760 KB
testcase_04 AC 47 ms
53,632 KB
testcase_05 AC 47 ms
54,016 KB
testcase_06 AC 110 ms
76,900 KB
testcase_07 AC 317 ms
78,356 KB
testcase_08 AC 47 ms
53,248 KB
testcase_09 AC 47 ms
53,504 KB
testcase_10 AC 47 ms
53,376 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import copy
N = int(input())
lsS = [list(input()) for i in range(N)]
'''
for i in range(1,N):
    if lsS[0][i] == '-':
        lsS[0][i] = 'o'
        lsS[i][0] = 'x'
'''
lsmi = []
for i in range(N-1):
    for j in range(i+1,N):
        if lsS[i][j] == '-':
            lsmi.append((i,j))
M = len(lsmi)
ans = 10
for i in range(2**M):
    lsS1 = copy.deepcopy(lsS)
    for j in range(M):
        if (i >> j)&1:
            a,b = lsmi[j]
            lsS1[a][b] = 'o'
            lsS1[b][a] = 'x'
        else:
            a,b = lsmi[j]
            lsS1[b][a] = 'o'
            lsS1[a][b] = 'x'
    ls = []
    for i in range(N):
        ls.append((lsS1[i].count('o'),i))
    ls.sort(reverse=True)
    cnt = 0
    win = 100
    lsrank = [0]*(N)
    for i in range(N):
        if win != ls[i][0]:
            cnt += 1
            lsrank[ls[i][1]] = cnt
            win = ls[i][0]
        else:
            lsrank[ls[i][1]] = cnt
    ans = min(lsrank[0],ans)
print(ans)
0