BNU 沙漠之旅
来源:互联网 发布:开微店和淘宝店哪个好 编辑:程序博客网 时间:2024/03/29 08:03
http://www.bnuoj.com/bnuoj/problem_show.php?pid=29376
我直接暴力搜索的。
剪枝:
1、步骤最多只有4步,超过4步则退出
2、油的行程相加后的总和距离大于剩余距离时也退出
AC代码:
#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int yn;int a[1010];bool cmp(int a, int b){ return a>b;}void Dfs(int sum, int now, int n,int nu,int i){ // printf("%d %d %d %d %d\n",sum,now,n,nu,i); int t,next; if(yn == 1 || now > sum || nu > 4) { return ; } if(nu == 4 && now == sum) { yn = 1; return ; } for(t = i; t < n; t++) { next = now+a[t]; Dfs(sum,next,n,nu+1,t); } return ;}int main(){ int t,i,l,x,n,sum; scanf("%d",&t); while(t--) { scanf("%d%d%d",&l,&x,&n); for(i = 0; i < n; i++) { scanf("%d",&a[i]); } sum = l-x; sort(a,a+n,cmp); if(sum > a[0]*4) { printf("No\n"); } else { yn = 0; for(i = 0; i < n; i++) { if(yn == 1) { break; } Dfs(sum,0,n,0,i); } if(yn) { printf("Yes\n"); } else { printf("No\n"); } } } return 0;}
- BNU 沙漠之旅
- BNU 沙漠之旅
- bnu 沙漠之旅 (二维背包)
- BNUOJ29376 沙漠之旅
- 沙漠之旅
- 沙漠之旅 && 抽签
- BNUOJ--29376 沙漠之旅
- HihoCoder]#1375 : 沙漠之旅
- B. 沙漠之旅(分组背包)
- 沙漠之旅(二维dp)
- 沙漠之路
- 《沙漠掘金》之随想
- 一道背包问题 BunOJ 29376 沙漠之旅
- BNU
- 第十一届北京师范大学程序设计竞赛(网络同步赛)+沙漠之旅
- BNUOJ 29376 沙漠之旅 // 第十一届北京师范大学程序设计竞赛决赛
- BNU 49102进化之地(Evoland) BFS
- BNU 49102 进化之地(Evoland)【Bfs】
- IOS 绘制曲线
- 基于Bresenham算法画圆
- Servlet中监听器的简单示例
- ARM 特殊二进制代码
- 重载new
- BNU 沙漠之旅
- 常见的23种设计模式的有趣见解
- hdu 2080
- sql server 数据库 表中记录的增长速率统计
- 温度场有限容积法程序入门之七:相变过程温度场的数值计算
- Linux 内存使用方法详细解析
- MYSQL limit,offset 区别
- 随笔日记:firefox界面有的gif图像不显示
- 动态加载script文件