部分和問題
描述
給定整數a1、a2、
.......an
,判斷是否可以從中選出若干數,使它們的和恰好為k。
輸入
首先,n和k,
n表示數的個數,
k表示數的和。
接著一行n個數。
(1<=n<=20,保證不超
int範圍)
輸出
如果和恰好可以為k,輸出
「yes」
,並按輸入順序依次輸出是由哪幾個數的和組成,否則
「no」
樣例輸入
4 13
1 2 4 7
樣例輸出
yes2 4 7
個人理解:
理解題目意思,此題求解一定會使用dfs,就可以了,比較基礎。
**:#include
#include
using namespace std;
int n,k,a[22],b[22];
bool dfs(int x,int sum)
if(dfs(x+1,sum+a[x]))
return false;
}int main()
{while(scanf("%d%d",&n,&k)!=eof){
for(int i = 0;i
部分和問題 南陽oj 1058
描述 給定整數a1 a2 an,判斷是否可以從中選出若干數,使它們的和恰好為k。輸入 首先,n和k,n表示數的個數,k表示數的和。接著一行n個數。1 n 20,保證不超int範圍 輸出 如果和恰好可以為k,輸出 yes 並按輸入順序依次輸出是由哪幾個數的和組成,否則 no 樣例輸入 4 13 1 2...
部分和問題
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 給定整數a1 a2 an,判斷是否可以從中選出若干數,使它們的和恰好為k。輸入 首先,n和k,n表示數的個數,k表示數的和。接著一行n個數。1 n 20,保證不超int範圍 輸出如果和恰好可以為k,輸出 yes 並按輸入順序依次...
部分和問題
時間限制 1000 ms 記憶體限制 65535 kb 難度 2 描述 給定整數a1 a2 an,判斷是否可以從中選出若干數,使它們的和恰好為k。輸入 首先,n和k,n表示數的個數,k表示數的和。接著一行n個數。1 n 20,保證不超int範圍 輸出如果和恰好可以為k,輸出 yes 並按輸入順序依次...