結果

問題 No.90 品物の並び替え
ユーザー toshiro_yanagitoshiro_yanagi
提出日時 2019-01-06 11:03:59
言語 Nim
(2.0.2)
結果
CE  
(最新)
AC  
(最初)
実行時間 -
コード長 861 bytes
コンパイル時間 1,006 ms
コンパイル使用メモリ 70,560 KB
最終ジャッジ日時 2024-11-14 20:45:17
合計ジャッジ時間 1,541 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
/home/judge/data/code/Main.nim(26, 15) Error: undeclared identifier: 'lc'

ソースコード

diff #

import sugar, strutils, tables
from algorithm import nextPermutation


proc nextString: string =
  result = ""
  while not endOfFile stdin:
    let nextChar = readChar stdin
    case nextChar
    of '\r':
      discard
    of "\n"[0], ' ':
      break
    else:
      add result, nextChar


proc nextInt: int =
  parseInt nextString()


proc main: void =
  let n, m = nextInt()

  var ans = 0
  var items = lc[j | (j <- 0 ..< n), int]
  var scoreDic = initTable[tuple[item1, item2: int], int]()

  for i in 0 ..< m:
    scoreDic[(nextInt(), nextInt())] = nextInt()


  while true:
    var score = 0
    for j in 0 ..< n:
      for i in 0 ..< j:
        let tmp = (items[i], items[j])
        if tmp in scoreDic:
          score += scoreDic[tmp]

    ans = max(ans, score)

    if not items.nextPermutation:
      break

  echo ans


when isMainModule:
  main()
0