[USACO2.1] 健康的荷斯坦奶牛 dfs
原题:https://www.luogu.org/problemnew/show/P1460
//USACO2.1 健康的荷斯坦奶牛
//by dadatu
#include<iostream>
#include<queue>
#include<cstdio>
#include<cstring>
using namespace std;int kind[1010][1010],a[1010],cur[1010],ans[1010],v[1010],visit[1010];
int n,m,minn=0x3f3f3f3f,cnt=0;bool judge()
{bool f=true;if (cnt>=minn) return !f;for (int i=0;i<n;i++)if (cur[i]<v[i]) f=false;return f;}
void dfs()
{if (cnt>=minn) return;//剪枝,如果已经超过当前最优解就不需要再继续搜了if (judge())//替换{minn=cnt;for (int i=0;i<cnt;i++) ans[i]=a[i];}for (int i=0;i<m;i++){if (!visit[i]&&i>=a[cnt-1])//剪枝,从小到大排{visit[i]++;a[cnt++]=i;for (int j=0;j<n;j++) cur[j]+=kind[i][j];dfs();for (int j=0;j<n;j++) cur[j]-=kind[i][j];cnt--;visit[i]=0;//回溯}}
}int main()
{scanf("%d",&n);for (int i=0;i<n;i++) scanf("%d",&v[i]);scanf("%d",&m);for (int i=0;i<m;i++)for (int j=0;j<n;j++) scanf("%d",&kind[i][j]);dfs(); printf("%d",minn);for (int i=0;i<minn;i++) printf(" %d",ans[i]+1);printf("\n");return 0;
}
[USACO2.1] 健康的荷斯坦奶牛 dfs相关推荐
- 洛谷:P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins(DFS)
题目描述 农民 John 以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维 ...
- P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins
题目描述 农民 John 以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维 ...
- USACO健康的荷斯坦奶牛(DFS,二进制暴力枚举)
农夫约翰以拥有世界上最健康的奶牛而感到自豪. 奶牛想要保持健康,每天就要补充足量的多种维生素. 约翰为奶牛们准备了多种牛饲料,每种牛饲料中都富含奶牛所需的多种维生素,但是每种维生素的具体含量可能并不相 ...
- 洛谷P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins
传送门:https://www.luogu.com.cn/problem/P1460 写这道题题解是因为对于我对题目的理解是对的,思路也比较清晰.但是在DFS代码的技巧上有欠缺导致无法写出完全AC的代 ...
- [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins
链接 洛谷 USACO 大意 给定nnn种维生素的需求量,对于第iii种维生素的需求量,记为a[i]a[i]a[i] 给定mmm种饲料,对于第iii种饲料的第jjj种维生素,其能增加b[i][j]b[ ...
- [USACO2.1] 健康的荷斯坦奶牛 Healthy Holsteins
题目 题目大意 给出一组数和一个G组数 求从G组数中取P组数,使他们的相对应的值相加都大于给定的那一组数 如果有多个解,输出饲料序号最小的(即字典序最小). 题目解析 利用二进制枚举,即1表示取,0表 ...
- 健康的荷斯坦奶牛-USACO-USACO阶梯-第2章.更大的挑战
题目描述 2.1.4 Healthy Holsteins健康的荷斯坦奶牛 (holstein.pas/c/cpp) 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他 ...
- USACO 2.1 健康的荷斯坦奶牛 Healthy Holsteins
健康的荷斯坦奶牛 题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛 ...
- 洛谷 P1460 健康的荷斯坦奶牛 Healthy Holsteins
P1460 健康的荷斯坦奶牛 Healthy Holsteins 题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保 ...
最新文章
- UNIX高手应该保持的习惯
- 剑指Offer_29_最小的K个数
- mysql联合查询sql优化
- NIO和BIO如何影响应用程序的设计-API调用
- php不发送referer,php – 注意:未定义的索引:HTTP_REFERER
- springMVC 返回json乱码问题
- 安卓手机浏览器排行_安卓手机性价比排行:小米10至尊纪念版仅排第三
- Python Selenium set Chrome Preference Download Location.
- 安卓毕业设计- Android计算器
- doesn‘t work properly without JavaScript enabled. Please enable it to continue 的原因之一
- IPv4与IPv6地址转换
- Android的增量更新
- 生物信息-学习从NCBI上下载数据
- synopsys 工具简介
- 并发编程-初级之认识并发编程
- 游戏本天梯_上分必读!大数据解读天梯前一百玩家阵容!
- 不同网段间访问共享文件
- openlayers根据半径绘制圆形,多圆连线并标记距离
- AWS是如何引领云计算的?
- angularjs修改html标签,angularjs sanitize+ng-bind-html内置指令做html标签转义