POJ 3628 Bookshelf 2(用DFS做01背包)
来源:互联网 发布:python 分布式计算 编辑:程序博客网 时间:2024/05/16 19:06
题目地址:点击打开链接
题意:小明买了一个书架,他想把东西放到书架上面,于是拿来了n个凳子,这些凳子的总高度大于等于书架的总高度,让你从n个凳子里取出一些使这些凳子的总高度大于书架的高度,并且超出书架的高度最低
思路:书架高度太高了,所以不能用动态规划,用搜索即可
AC代码:
#include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <queue>#include <stack>#include <map>#include <cstring>#include <climits>#include <cmath>#include <cctype>typedef long long ll;using namespace std;int a[25];int n,low,high;bool flag;void dfs(int t,int sum){ if(t == n) { if(sum >= high) { if(flag) { low = sum; flag = false; } else if(sum < low) { low = sum; } } return; } dfs(t+1,sum+a[t]); dfs(t+1,sum);}int main(){ int i; while(scanf("%d%d",&n,&high) != EOF) { for(i=0;i <n; i++) { scanf("%d",&a[i]); } low = 0; flag = true; dfs(0,0); printf("%d\n",low-high); } return 0;}
0 0
- POJ 3628 Bookshelf 2(用DFS做01背包)
- poj 3628 Bookshelf 2(dfs, 01背包)
- poj 3628 Bookshelf 2(01背包,dfs)
- poj 3628 Bookshelf 2(01背包入门或者dfs)
- poj 3628 Bookshelf 2 01背包或者dfs
- POJ 3628 Bookshelf 2 (01背包)
- poj 3628 Bookshelf 2 (01背包)
- 【POJ 3628】Bookshelf 2(01背包)
- POJ 3628 Bookshelf 2 (01背包)
- POJ 3628 Bookshelf 2 DFS 0-1背包问题
- POJ 3628 Bookshelf 2 0-1背包 or DFS 水题
- poj 3628 Bookshelf 2 01背包
- poj 3628 Bookshelf 2 01背包!!!
- poj 3628 Bookshelf 2 01背包
- [01背包]POJ 3628 Bookshelf 2
- POJ 3628 Bookshelf 2(DP:01背包)
- poj 3628 Bookshelf 2 01背包
- POJ 3628 Bookshelf 2 (01背包)
- hdoj 阿牛的EOF牛肉串
- ILSpy For MacOsX
- UML——类图和对象图
- java.util.ResourceBundle使用详解
- android---logcat
- POJ 3628 Bookshelf 2(用DFS做01背包)
- MYSQL数据库字段命名及设计规范
- JSP基础
- Android知识总结:Universal-Imageloader学习笔记1 基本功能与配置
- Android Studio手把手——帮你了解Gradle
- 布局的学习
- 慕课网 java第二季 面向对象
- VS2015 Cordova安装总结
- hdoj 求平均成绩