結果

問題 No.95 Alice and Graph
ユーザー 6soukiti296soukiti29
提出日時 2017-08-18 16:46:51
言語 Nim
(2.0.2)
結果
WA  
実行時間 -
コード長 1,214 bytes
コンパイル時間 3,425 ms
コンパイル使用メモリ 72,980 KB
実行使用メモリ 814,048 KB
最終ジャッジ日時 2023-09-12 14:52:51
合計ジャッジ時間 8,222 ms
ジャッジサーバーID
(参考情報)
judge11 / judge15
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 WA -
testcase_01 WA -
testcase_02 MLE -
testcase_03 -- -
testcase_04 -- -
testcase_05 -- -
testcase_06 -- -
testcase_07 -- -
testcase_08 -- -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
権限があれば一括ダウンロードができます
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 26) Warning: imported and not used: 'math' [UnusedImport]

ソースコード

diff #

import sequtils,strutils,math
var
    N,M,K,u,v : int
    D : array[1..60, array[1..60, int]]
(N, M, K) = stdin.readline.split.map(parseInt)

for i in 1..N:
    for j in 1..N:
        D[i][j] = 1000

for m in 1..M:
    (u,v) = stdin.readline.split.map(parseInt)
    D[u][v] = 1
    D[v][u] = 1

for k in 1..N:
    for i in 1..N:
        for j in 1..N:
            D[i][j] = min(D[i][j], D[i][k] + D[k][j])
var
    p : int
    Tezyuns : seq[seq[int]] = @[@[1,0]]
    T2 : seq[seq[int]]
    x : int
for n in countdown(N, 1):
    if D[1][n] <= K:
        T2 = @[]
        for tezyun in Tezyuns:
            var
                p = tezyun[^1]
            for i,t in tezyun[0..^2]:
                if i == tezyun.high - 1 and p + D[t][n] <= K:
                    T2.add(tezyun[0..i] & @[n,p + D[t][n]])
                else:
                    x = p + D[t][n] + D[n][tezyun[i + 1]] - D[t][tezyun[i + 1]]
                    if x <= K:
                        T2.add(tezyun[0..i] & @[n] & tezyun[(i + 1)..^2] & @[x])
        if T2.len > 0:
            Tezyuns = T2
var ans,ans1 : int64
for tezyun in Tezyuns:
    ans1 = 0
    for t in tezyun[0..^2]:
        ans1 += (1 shl (t - 1)) - 1
    ans = max(ans1,ans)
echo ans
0