洛谷 P1036 選數

2022-08-10 17:30:16 字數 861 閱讀 6731

已知 n 個整數 x1,x2,…,xn,以及乙個整數 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)

x1,x2,…,xn (1<=xi<=5000000)

輸出格式:

螢幕輸出,格式為:

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

以下**僅供參考

#include//

萬能標頭檔案

using

namespace

std;

int ans,n,k,a[50

],i;

bool check(int a)//

判斷質數(a即為選擇的k個數之和)

void dfs(int num,int i,int sum)//

(num表示已選數的個數,i表示下乙個要列舉的數的位置,sum表示選數之和)

for(i;i<=n;i++)//

只有這兩行才是核心**(其實就是乙個暴力,相當於n個數中列舉k個元素的集合)

dfs(num+1,i+1,sum+a[i]);//

以i向後列舉,由於前一步處理了邊界,這裡不需擔心會超過k個數

}int

main()

洛谷P1036 選數

已知 n 個整數 x1,x2,xn,以及乙個整數 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。...

洛谷 P1036選數

已知 n 個整數 x1,x2,xn以及1個整數k k3 7 12 22 3 7 19 29 7 12 19 38 3 12 19 34 現在,要求你計算出和為素數共有多少種。例如上例,只有一種的和為素數 3 7 19 29。輸入格式 鍵盤輸入,格式為 n,k 1 n 20,kx1,x2,xn 1 x...

洛谷P1036選數

題目描述 已知 n 個整數 x1,x2,xn,以及1個整數k k3 7 12 22 3 7 19 29 7 12 19 38 3 12 19 34 現在,要求你計算出和為素數共有多少種。例如上例,只有一種的和為素數 3 7 19 29 輸入樣例 4 33 7 12 19 輸出樣例 1 include...