输出0求助

P1036 [NOIP2002 普及组] 选数

改了一次后32分 ```cpp #include<bits/stdc++.h> using namespace std; int n,js=0; int a[21]; bool pd(int x) { for(int i=2;i*i<=n;i++) { if(n%i==0) { return 0; } } return 1; } void dfs(int zx,int x,int zs) { if(x==0) { if(pd(zs)) { js++; } return; } for(int i=zx;i<=n-x+1;i++) { zs+=a[i]; dfs(i+1,x-1,zs); zs-=a[i]; } } int main() { int k; cin>>n>>k; for(int i=1;i<=n;i++) { cin>>a[i]; } sort(a+1,a+n+1); dfs(1,k,0); cout<<js; return 0; } ``````
by ycy1124 @ 2024-02-20 09:06:08


@[ycy1124](/user/1199534) hack: ~~~ 5 4 1 2 3 4 5 ~~~ 怎么都不可能是120啊
by DFs_YYDS @ 2024-02-20 09:15:02


本人眼瞎,将pd函数x写成n,改了之后AC
by ycy1124 @ 2024-02-20 09:16:21


@[DFs_YYDS](/user/1119406) 谢谢,本人已关注
by ycy1124 @ 2024-02-20 09:24:53


|