遞迴入門 組合 判斷素數

2021-08-04 09:43:07 字數 914 閱讀 2216

時間限制: 1 sec  

記憶體限制: 128 mb

已知 n 個整數b1,b2,…,bn

以及乙個整數 k(k<n)。

從 n 個整數中任選 k 個整數相加,可分別得到一系列的和。

例如當 n=4,k=3,4 個整數分別為 3,7,12,19 時,可得全部的組合與它們的和為:

3+7+12=22  3+7+19=29  7+12+19=38  3+12+19=34。

現在,要求你計算出和為素數共有多少種。

例如上例,只有一種的和為素數:3+7+19=29。

第一行兩個整數:

n , k (1<=n<=20,k<n) 

第二行n個整數:x1,x2,…,xn (1<=xi<=5000000) 

乙個整數(滿足條件的方案數)。 

4 3
3 7 12 19

1
這道題目單個資料的數值太大,不能用篩素數法,但是總的資料量卻很小(1<=n<=20)可以單獨判斷

#include#include#includevoid dfs(int cur,int i);

bool check(int a);

int an[25],n,k,cnt,max,sum;

bool book[25];

int main()

dfs(0,0);

printf("%d",cnt);

return 0;

}void dfs(int cur,int i)

for(i;in-(k-cur))

return ;

if(book[i]==false)

}}bool check(int a)

return true;

}

遞迴入門 組合 判斷素數

已知 n 個整數b1,b2,bn 以及乙個整數 k k n 從 n 個整數中任選 k 個整數相加,可分別得到一系列的和。例如當 n 4,k 3,4 個整數分別為 3,7,12,19 時,可得全部的組合與它們的和為 3 7 12 22 3 7 19 29 7 12 19 38 3 12 19 34。現...

遞迴入門 組合 判斷素數

題目描述 已知 n 個整數b1,b2,bn以及乙個整數 k k n 從 n 個整數中任 選 k 個整數相加,可分別得到一系列的和。例如當 n 4,k 3,4 個整 數分別為 3,7,12,19 時,可得全部的組合與它們的和為 3 7 12 22 3 7 19 29 7 12 19 38 3 12 1...

問題 C 遞迴入門 組合 判斷素數

問題 c 遞迴入門 組合 判斷素數 時間限制 1 sec 記憶體限制 128 mb 提交 2125 解決 615 提交 狀態 討論版 命題人 外部匯入 題目描述 已知 n 個整數b1,b2,bn 以及乙個整數 k k n 從 n 個整數中任選 k 個整數相加,可分別得到一系列的和。例如當 n 4,k...