Submission #00045


ソースコード

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define INF 10000000000000LL
ll dp(int bits);
int n;
ll a[21][21];
ll memo[2097152];
ll t=0;
int main(){
memset(memo,-1,sizeof(memo));
cin>>n;
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
cin>>a[i][j];
}
}
for(int i=0;i<n;i++){
t+=(1<<i);
}
cout<<dp(0)<<endl;
}
ll dp(int bits){
ll rec=INF,cnt=0;
if(memo[bits]!=-1)return memo[bits];
if(bits==t)return 0;
for(int j=0;j<n;j++){
if((bits>>j)&1)cnt++;
}
for(int j=0;j<n;j++){
if(!((bits>>j)&1)){
rec=min(rec,dp(bits|(1<<j))+a[j][cnt]);
}
}
return memo[bits]=rec;
}

ステータス

項目 データ
問題 0005 - 発表会
ユーザー名 r1705
投稿日時 2019-04-24 17:41:47
言語 C++11
状態 Accepted
得点 100
ソースコード長 683 Byte
最大実行時間 186 ms
最大メモリ使用量 17116 KB

セット

セット 得点 Cases
1 ALL 100 / 100 *

テストケース

ファイル名 状態 実行時間 メモリ使用量 #
case01.in AC 181 ms 16860 KB
1
case02.in AC 172 ms 16832 KB
1
case03.in AC 161 ms 16928 KB
1
case04.in AC 139 ms 16900 KB
1
case05.in AC 164 ms 16740 KB
1
case06.in AC 151 ms 16840 KB
1
case07.in AC 147 ms 16804 KB
1
case08.in AC 151 ms 16900 KB
1
case09.in AC 147 ms 16868 KB
1
case10.in AC 153 ms 16836 KB
1
case11.in AC 168 ms 16932 KB
1
case12.in AC 154 ms 16896 KB
1
case13.in AC 186 ms 16996 KB
1
case14.in AC 143 ms 16960 KB
1
case15.in AC 154 ms 16928 KB
1
case16.in AC 144 ms 16896 KB
1
case17.in AC 143 ms 16868 KB
1
case18.in AC 168 ms 16960 KB
1
case19.in AC 159 ms 16928 KB
1
case20.in AC 143 ms 17024 KB
1
sample01.in AC 33 ms 17116 KB
1
sample02.in AC 22 ms 16960 KB
1