83分程序,乆乆,万分感谢!!!
查看原帖
83分程序,乆乆,万分感谢!!!
793831
Casto2楼主2023/4/10 19:55
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int n,m,k,a[100050],vis[100050],ans,z;
void dfs(int x,int y,int ans)
{
		if(y==0) 
		{
			m=1;
			for(int j=2;j*j<=ans;j++)
		    {
		        if(ans%j==0)
		        {
			       m=0;
			       return ;
		        }
	        }	
			    if(m!=0) z++;
	            return ;
	    }
	for(int i=x;i<=n;i++)
	{

		dfs(i+1,y-1,ans+a[x]);

	}		

}
int main()
{
	scanf("%d%d",&n,&k);
	for(int i=1;i<=n;i++) scanf("%d",&a[i]);
	dfs(1,k,0);
	printf("%d",z);
}
2023/4/10 19:55
加载中...