牛客 北京信息科技大学第十一届程序设计竞赛 E kotori和素因子(dfs)

牛客 北京信息科技大学第十一届程序设计竞赛 E kotori和素因子(dfs)_第1张图片

牛客 北京信息科技大学第十一届程序设计竞赛 E kotori和素因子(dfs)_第2张图片

牛客 北京信息科技大学第十一届程序设计竞赛 E kotori和素因子(dfs)_第3张图片

直接爆搜,枚举每个数取出的质因子即可。

PS:我是真的菜。

#include 
#define ll long long
using namespace std;
const int N = 1e3+10;
const int inf = 0x3f3f3f3f;
//vector  pd[20];
int pr[N],cnt,a[20];
bool vis[N],book[N];
int ans,n;
void dfs(int cur,int res)
{
	if(cur==n+1)
	{
		ans=min(ans,res);
		return ;
	}
	for(int i=0;pr[i]<=a[cur];i++)
	{
		if(a[cur]%pr[i]==0&&!book[i])
		{
			book[i]=1;
			dfs(cur+1,res+pr[i]);
			book[i]=0;
		}
	}
	return ;
}

void Init()
{
	ans=inf;
	for(int i=2;i<=N-10;i++)
	{
		if(!vis[i]) pr[cnt++]=i;
		for(int j=0;j

 

你可能感兴趣的:(牛客 北京信息科技大学第十一届程序设计竞赛 E kotori和素因子(dfs))