1 solutions
-
0
C++ :
#include<iostream> #define MAXN 99999999 using namespace std; const int N = 21; int a[N][N],book[N],n,ans=MAXN; void dfs(int step,int sum) { if(step==n+1){ if(sum<ans) ans=sum; return ; } for(int i=1;i<=n;i++) { if(book[i]==0){ book[i]=1; dfs(step+1,sum+a[step][i]); book[i]=0; } } return ; } int main() { cin>>n; for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) cin>>a[i][j]; dfs(1,0); cout<<ans<<endl; return 0; }
- 1
Information
- ID
- 685
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By