d : 部分和問題
時間限制:1 sec 記憶體限制:64 mib
給定整數a1、a2、.......an,判斷是否可以從中選出若干數,使它們的和恰好為k。
首先,n和k,n表示數的個數,k表示數的和。接著一行n個數。
(1<=n<=20,保證不超int範圍)
如果和恰好可以為k,輸出「yes」,並按輸入順序依次輸出是由哪幾個數的和組成,否則「no」
複製
4 131 2 4 7
複製
yes2 4 7
無
#includeintn,k
;inta[
100],b[
100];
bool
dfs(
inti
,int
sum)
//if
(dfs(i
+1,sum+a
[i]))return
false;}
intmain
()if
(dfs(0
,0))printf
("\n");}
else
printf
("no\n");}
return0;
}
深度優先搜尋 部分和問題
include include include include define max n 2147483647 using namespace std 深度優先搜尋 部分和問題 給定整數a1,a2,a3,an,判斷是否可以從中選出若干數,使它們的和恰好為k。問題解決思路 1 dfs遍歷每個數列元素能...
部分和問題
時間限制 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 並按輸入順序依次...