洛谷P1036選數題解 zhengjun

2022-10-11 13:39:11 字數 1666 閱讀 3281

題目描述

已知 n

nn 個整數 x1,

x2,…

,x

nx_1,x_2,…,x_n

x1​,x2

​,…,

xn​,以及1

11 個整數 k

kk (k

k<

n)。從 n

nn 個整數中任選 k

kk 個整數相加,可分別得到一系列的和。例如當 n=4

,k=3

n=4,k=3

n=4,k=

3, 4

44 個整數分別為 3,7

,12,19

3,7,12,19

3,7,12

,19 時,可得全部的組合與它們的和為:

3 +7

+12=22

3+7+12=22

3+7+12

=22

3 +7

+19=29

3+7+19=29

3+7+19

=29

7 +12

+19=38

7+12+19=38

7+12+1

9=383+

12+19=

343+12+19=34

3+12+1

9=34

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

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

+19=29

3+7+19=29

3+7+19

=29。

輸入格式

鍵盤輸入,格式為:

n ,k

n,kn,

k(1≤n≤

20,

k<

n1 \le n \le 20,k1≤

n≤20

,kx 1,

x2,…

,x

nx_1,x_2,…,x_n

x1​,x2

​,…,

xn​ (1≤x

i≤

5000000

1 \le x_i \le 5000000

1≤xi​≤

5000

000)

輸出格式

螢幕輸出,格式為: 1

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

輸入輸出樣例

輸入 #1 複製

433

71219

輸出 #1 複製
1
反正就是列舉所有可能的情況,再判斷是否是素數就可以了。

#include

using

namespace std;

int n,m;

int a[21]

;int ans;

intcheck

(int x)

void

dfs(

int k,

int sum,

int head)

for(

int i=head;i<=n;i++

)dfs

(k+1

,sum+a[i]

,i+1);

}int

main()

多簡單

洛谷題解 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 xi...

洛谷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...