0分求助
查看原帖
0分求助
1098965
lrb20120825楼主2024/4/13 20:21
#include<iostream>
#include<algorithm>
using namespace std;
int n,k;
int yon[20];
bool ji[20];
int da[10000];
int jie;
int f=0;
int sum;
int sx(int n)
{
    int i;
    if(n<2||(n!=2&&n%2==0))
        return 0;
    else
    {
        for(i=3;i<n;i+=2)
        {
            if(n%i==0)
            return 0;
        }
        return 1;
    }
}
void dfs(int g)
{
	if(g>k)
	{
		for(int i=0;i<k;i++)
		{
			if(ji[i]==1)
			{
			da[f]+=yon[i];
			}

		}
		f++;
	}
	for(int i=0;i<n;i++)
		{
			if(ji[i]==0)
			{
				ji[i]=1;
				dfs(g+1);
				ji[i]=0;
			}
		}
}
int main()
{
	cin>>n>>k;
	for(int i=0;i<n;i++)
	{
		cin>>yon[i];
	}
	sort(da+0,da+0+f);
	for(int i=0;i<f;i++)
	{
		if(da[i]==da[i+1])
		da[i]=0;
	}
	for(int i=0;i<f;i++)
	{
		if(sx(da[i])==1)
		sum++;
	}
	cout<<sum;
}
2024/4/13 20:21
加载中...