新手蒟蒻DFS结果TLE,求大佬们看一下能不能优化
查看原帖
新手蒟蒻DFS结果TLE,求大佬们看一下能不能优化
467107
Cap1taL楼主2021/8/4 11:53
#include <bits/stdc++.h>
using namespace std;
int data[101][101],n;
int MAXX,MINN=999;
bool a[101];
void dfs(int man,int MAX)
{
	for(int i=1;i<=n;i++){
		if(!a[i]){
			a[i]=1;
			MAX+=data[man][i];
			if(man==n){
				if(MAX>MAXX)	MAXX=MAX;
				if(MAX<MINN)	MINN=MAX;
			}else{
				dfs(man+1,MAX);
			}
			a[i]=0;
			MAX-=data[man][i];
		}
	}
}
int main()
{
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
			scanf("%d",&data[i][j]);
		}
	}
	dfs(1,0);
	cout<<MINN<<endl<<MAXX;
	return 0;
}
2021/8/4 11:53
加载中...