向大佬求助,蒟蒻哭死
查看原帖
向大佬求助,蒟蒻哭死
605616
hwws楼主2023/10/2 23:14
#include<iostream>
using namespace std;
int vis2[6];
int a[6][12];
int vis1[6];
int sum=0,count;
int minn=100000;
void find(int x){
	for(int i=1;i<=10;i++)
		if(!vis1[x]){
			vis1[x]=i;
			sum+=i;
			if(x==5&&sum==25){
				count=0;
				for(int j=1;j<=5;j++)
					count+=a[j][vis1[j]];
				if(count<minn){
					minn=count;
					for(int k=1;k<=5;k++)
						vis2[k]=vis1[k];
				}				
			}
			else
				find(x+1);
			vis1[x]=0;
			sum-=i;
		}	
}
int main(){
	for(int i=1;i<=5;i++)
		for(int j=1;j<=10;j++)
			cin>>a[i][j];
	find(1);
	cout<<minn<<endl;
	for(int i=1;i<=5;i++)
		cout<<vis2[i]<<" ";
	
	return 0;
}

悬赏关注

2023/10/2 23:14
加载中...