結果

問題 No.90 品物の並び替え
ユーザー piconic_X
提出日時 2016-08-24 20:54:48
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
TLE  
実行時間 -
コード長 702 bytes
コンパイル時間 333 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 98,560 KB
最終ジャッジ日時 2024-11-08 02:10:37
合計ジャッジ時間 8,845 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 8 TLE * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

def eval(arr, reg):
    score = 0
    for r in reg:
        i1 = arr.index(r[0])
        i2 = arr.index(r[1])
        if i1 < i2:
            score += r[2]
    return score

def make_arr(N):
    A = []
    def sub(arr, nums):
        if nums == set():
            A.append(arr)
        else:
            for i in nums:
                arr_ = arr.copy()
                arr_.append(i)
                sub(arr_, nums-{i})
    sub([], set([i for i in range(N)]))
    return A

def main():
    [N, M] = list(map(int, input().split()))
    reg = []
    for i in range(M):
        reg.append(list(map(int, input().split())))
    A = make_arr(N)
    res = [eval(a, reg) for a in A]
    print(max(res))

main()
0