描述
小哈準備參加學校組織的春遊,出發前小哈準備往揹包裡裝入一些零食,小哈的揹包容量為w公升。小哈家裡一共有n袋零食,第i袋零食體積為v[i]。
小哈想知道在總體積不超過揹包容量的情況下,他一共有多少種零食放法。
輸入輸入包括兩行
第一行為兩個正整數n和w(1<=n<=30,1<=w<=2*10^9),表示零食的數量和揹包的容量。
第二行n個正整數vi,表示每袋零食的體積。
輸出輸出乙個正整數, 表示牛牛一共有多少種零食放法。
輸入樣例 1
3 10
1 2 4
輸出樣例 1
8**如下:
#include
using namespace std;
int n, v[31]
, book[31]
=, total =0;
void
dfs(
int w,
int num)
} total++;}
intmain()
深度優先搜尋演算法
include include define vertexnum 9 struct node typedef struct node graph struct node head vertexnum 定義圖形結構 int visited vertexnum 頂點陣列 深度優先搜尋 void dfs ...
深度優先搜尋演算法
今天我們來複習一下萬能的搜尋演算法之深度優先搜尋演算法。深度優先搜尋演算法顧名思義就是按照樹的延伸不停的往下搜尋,直到樹的盡頭之後再一步一步的回溯回來。好吧,我們直接問你乙個問題,給你乙個數n,讓你輸出從1到這個樹的全排列,你會怎麼寫,會不會想到去用若干個for迴圈?好吧,你肯定錯了,其實他考的就是...
深度優先搜尋演算法
1.深度優先搜尋演算法的概念 深度優先搜尋屬於圖演算法的一種,英文縮寫為dfs depth first search.其過程簡要來說是對每乙個可能的分支路徑深入到不能再深入為止,而且每個 節點只能訪問一次。如下例 該圖為乙個無向圖,假設我們從a開始進行深度優先搜尋,第二點可以是b c d中任意乙個,...