Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdio.h>
- int n;
- int table[11][11];
- int ColumOfRow[11];
- bool pickedColum[11];
- int ANScolum[11];
- int ans = -2e9;
- int recur(int index){
- if(index <= n){
- for(int i = 1;i<=n;i++){
- if(!pickedColum[i]){
- pickedColum[i] = true;
- ColumOfRow[index] = i;
- recur(index+1);
- pickedColum[i] = false;
- }
- }
- }
- else{
- /* for(int i=1;i<=n;i++){
- printf("%d ",ColumOfRow[i]);
- }printf("\n");*/
- int tempsum = 0;
- for(int i=1;i<=n;i++){
- tempsum += table[i][ColumOfRow[i]];
- }
- if(tempsum > ans){
- ans = tempsum;
- for(int i=1;i<=n;i++){
- ANScolum[i] = ColumOfRow[i];
- }
- }
- }
- }
- int main()
- {
- scanf("%d",&n);
- for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)scanf("%d",&table[i][j]);
- recur(1);
- printf("%d\n",ans);
- for(int i=1;i<=n;i++){
- printf("%d %d\n",i,ANScolum[i]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment