結果
| 問題 |
No.519 アイドルユニット
|
| コンテスト | |
| ユーザー |
6soukiti29
|
| 提出日時 | 2017-07-08 09:39:21 |
| 言語 | Nim (2.2.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 844 bytes |
| コンパイル時間 | 4,824 ms |
| コンパイル使用メモリ | 67,108 KB |
| 実行使用メモリ | 147,548 KB |
| 最終ジャッジ日時 | 2024-06-30 01:36:26 |
| 合計ジャッジ時間 | 8,481 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 1 -- * 33 |
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 26) Warning: imported and not used: 'math' [UnusedImport]
ソースコード
import sequtils,strutils,math
proc powInt(n : int64, m : int64, k = 1_000_000_007):int64 =
if m == 0:
return 1
elif m == 1:
return (n mod k)
if (m mod 2) == 0:
return powInt((n*n) mod k,m div 2, k) mod k
else:
return (powInt((n*n) mod k,m div 2, k) * n) mod k
proc p2(i : int):int =
return powInt(2,i).int
var
N = stdin.readline.parseInt
A = newSeqWith(N,newSeq[int](0))
x : int
B = newSeqWith(p2(N),-1)
T : seq[int]
for n in 0..<N:
A[n] = stdin.readline.split.map(parseInt)
T = @[]
for k in 1..<N:
for j in 0..<k:
x = p2(k) + p2(j)
B[x] = A[k][j]
T.add(x)
for i in 1..<p2(N):
if B[i] == -1:
continue
for t in T:
if (i and t) == 0:
B[i + t] = max(B[i + t],B[i] + B[t])
echo B[p2(N) - 1]
6soukiti29