16分,求dalao帮助!!!
查看原帖
16分,求dalao帮助!!!
555780
Kevinyyds楼主2022/8/12 15:47
#include<bits/stdc++.h> 
using namespace std;
int n,m,t,e,a[25],b[25];
double x;
void dfs(int k,int s)
{
    if(k>m)   
	{ 
	    t=0;
	    for(int i=3;i*i<=s;i=i+2)
	    {
	    	e++;
            if(s%i!=0)
                t++;
        }
        if(t==e)
            x++;
        return ;
	}
    for(int i=1;i<=n;i++)
    {
    	if(b[i]==0)
    	{
			b[i]=1;
			dfs(k+1,s+a[i]);
			b[i]=0;
		}
	}
}  
int main()
{ 
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
        cin>>a[i];
    dfs(1,0);
    cout<<x;
    return 0;
}

只对了#2。 https://www.luogu.com.cn/record/83494968

2022/8/12 15:47
加载中...