DFS解决任意组合原来这样简单
2012-03-28 18:45
218 查看
HDU 2660 http://acm.hdu.edu.cn/showproblem.php?pid=2660
题意就不说了,直接走代码。
View Code
题意就不说了,直接走代码。
View Code
#include<iostream> #include<cstdio> #include<cstring> #include<string> #include<algorithm> using namespace std; #define max(a, b) (a>b?a:b) int V[21], W[21], Ans, N, K, L, i; void DFS(int p, int vv, int ww, int num) { if(vv>Ans) Ans = vv; if(ww>L) return; if(num==K) return; int i; for(i=p; i<N; i++) DFS(i+1, vv+V[i], ww+W[i], num+1); //注意,这里的p是i+1, 而不p+1,我去,不然一直超时呀。 } int main() { int Case, i; scanf("%d", &Case); while(Case--) { scanf("%d%d", &N, &K); for(i=0; i<N; i++) scanf("%d%d", &V[i], &W[i]); scanf("%d", &L); Ans = 0; DFS(0, 0, 0, 0); printf("%d\n", Ans); } }
相关文章推荐
- 大话组合查询(原来是这样)
- 自定义的tabbar在跳转之后隐藏tabbar后,tabbar原来的位置不能响应点击事件,这样解决
- nyoj 32 组合数【简单dfs】
- 数组中任意n个数的全排列(DFS)以及任意n个数的组合
- 成功原来这样简单
- 揭秘 AMD VISION技术——“视•觉”原来这样简单
- 成功原来这样简单
- 揭秘 AMD VISION技术——“视•觉”原来这样简单
- 简单解决Linq多条件组合问题<转>
- 原来更新A的一列为B列的一列,这样简单呀
- JS--我发现,原来你是这样的JS(引用类型不简单[上篇],且听我娓娓道来)
- 原来计算机中的搜索可以这样简单
- 新入的Android工程很多时候都会遇到这样的问题,R.mainactivity.xml报错,一看原来发现是R类访问不到我们的资源文件在这个时候怎么解决呢?
- 成功原来这样简单
- JS--我发现,原来你是这样的JS(引用类型不简单[下篇],基本包装类型与个体内置对象)
- 学习.NET遇到的第一个问题。原来解决这么简单
- 原来事情可以这样简单
- 成功原来这样简单
- 原来可以这样简单的说明10维空间的奥秘
- MathType找不到dll文件,原来要这样解决