網易實習2019程式設計題 牛牛揹包
牛牛準備參加學校組織的春遊, 出發前牛牛準備往揹包裡裝入一些零食, 牛牛的揹包容量為w。
牛牛家裡一共有n袋零食, 第i袋零食體積為v[i]。
牛牛想知道在總體積不超過揹包容量的情況下,他一共有多少種零食放法(總體積為0也算一種放法)。
這個題筆試的時候沒有寫出來
import java.util.*;
public class Main{
public static int count = 1;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int nums = scanner.nextInt();
int w = scanner.nextInt();
if(nums == 0 || w == 0){
System.out.println(0);
return;
}
long[] shiwu = new long[nums];
long sum = 0;
for (int i = 0; i < nums; i++) {
shiwu[i] = scanner.nextInt();
sum += shiwu[i];
}
if(sum <= w){
System.out.println((int)Math.pow(2,nums));
return;
}
helpDfs(shiwu,w,0,0);
System.out.println(count);
}
public static void helpDfs(long[] shiwu,int total,long sum,int cur){
if(cur < shiwu.length){
if(sum > total) return;
if(sum + shiwu[cur] <= total){
count++;
helpDfs(shiwu,total,sum+shiwu[cur],cur+1);
}
helpDfs(shiwu,total,sum,cur+1);
}
}
}
相關文章
- [程式設計題] 黑化的牛牛程式設計
- [程式設計題] 膨脹的牛牛程式設計
- 揹包問題(01揹包與完全揹包)
- 揹包問題
- Java實現-揹包問題IJava
- Java實現-揹包問題IIJava
- Java實現-揹包問題VIJava
- ACM 揹包問題ACM
- 01揹包問題
- [Offer收割]程式設計練習賽1 hihocoder 1270 建造基地 (完全揹包)程式設計
- javascript演算法基礎之01揹包,完全揹包,多重揹包實現JavaScript演算法
- 01揹包、完全揹包、多重揹包詳解
- 揹包DP——完全揹包
- 揹包DP——混合揹包
- 揹包 學習筆記筆記
- 揹包問題大合集
- 揹包題型總結
- 分組揹包、完全揹包
- 從【零錢兌換】問題看01揹包和完全揹包問題
- JavaScript中揹包問題(面試題)JavaScript面試題
- 揹包問題例題總結
- 01揹包面試題系列(一)面試題
- JavaScript 揹包問題詳解JavaScript
- 揹包
- 揹包問題解題方法總結
- 01揹包、有依賴的揹包
- 強化學習--策略迭代如何解決01揹包問題?內附程式碼強化學習
- 01揹包問題的解決
- 揹包問題----動態規劃動態規劃
- 【動態規劃】揹包問題動態規劃
- 揹包問題的演算法演算法
- chapter12-2-揹包問題APT
- 二維費用揹包問題
- 設計師研發智慧揹包Keeback,可實時定位和播放音樂
- 揹包計數問題的多項式最佳化
- 01 揹包
- 揹包DP
- 動態規劃-揹包01問題推理與實踐動態規劃