原题: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相关推荐

  1. 洛谷:P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins(DFS)

    题目描述 农民 John 以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维 ...

  2. P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins

    题目描述 农民 John 以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛所需的最低的维 ...

  3. USACO健康的荷斯坦奶牛(DFS,二进制暴力枚举)

    农夫约翰以拥有世界上最健康的奶牛而感到自豪. 奶牛想要保持健康,每天就要补充足量的多种维生素. 约翰为奶牛们准备了多种牛饲料,每种牛饲料中都富含奶牛所需的多种维生素,但是每种维生素的具体含量可能并不相 ...

  4. 洛谷P1460 [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins

    传送门:https://www.luogu.com.cn/problem/P1460 写这道题题解是因为对于我对题目的理解是对的,思路也比较清晰.但是在DFS代码的技巧上有欠缺导致无法写出完全AC的代 ...

  5. [USACO2.1]健康的荷斯坦奶牛 Healthy Holsteins

    链接 洛谷 USACO 大意 给定nnn种维生素的需求量,对于第iii种维生素的需求量,记为a[i]a[i]a[i] 给定mmm种饲料,对于第iii种饲料的第jjj种维生素,其能增加b[i][j]b[ ...

  6. [USACO2.1] 健康的荷斯坦奶牛 Healthy Holsteins

    题目 题目大意 给出一组数和一个G组数 求从G组数中取P组数,使他们的相对应的值相加都大于给定的那一组数 如果有多个解,输出饲料序号最小的(即字典序最小). 题目解析 利用二进制枚举,即1表示取,0表 ...

  7. 健康的荷斯坦奶牛-USACO-USACO阶梯-第2章.更大的挑战

    题目描述 2.1.4 Healthy Holsteins健康的荷斯坦奶牛 (holstein.pas/c/cpp) 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他 ...

  8. USACO 2.1 健康的荷斯坦奶牛 Healthy Holsteins

    健康的荷斯坦奶牛 题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保持它们的健康,使喂给牛的饲料的种数最少. 给出牛 ...

  9. 洛谷 P1460 健康的荷斯坦奶牛 Healthy Holsteins

    P1460 健康的荷斯坦奶牛 Healthy Holsteins 题目描述 农民JOHN以拥有世界上最健康的奶牛为傲.他知道每种饲料中所包含的牛所需的最低的维他命量是多少.请你帮助农夫喂养他的牛,以保 ...

最新文章

  1. UNIX高手应该保持的习惯
  2. 剑指Offer_29_最小的K个数
  3. mysql联合查询sql优化
  4. NIO和BIO如何影响应用程序的设计-API调用
  5. php不发送referer,php – 注意:未定义的索引:HTTP_REFERER
  6. springMVC 返回json乱码问题
  7. 安卓手机浏览器排行_安卓手机性价比排行:小米10至尊纪念版仅排第三
  8. Python Selenium set Chrome Preference Download Location.
  9. 安卓毕业设计- Android计算器
  10. doesn‘t work properly without JavaScript enabled. Please enable it to continue 的原因之一
  11. IPv4与IPv6地址转换
  12. Android的增量更新
  13. 生物信息-学习从NCBI上下载数据
  14. synopsys 工具简介
  15. 并发编程-初级之认识并发编程
  16. 游戏本天梯_上分必读!大数据解读天梯前一百玩家阵容!
  17. 不同网段间访问共享文件
  18. openlayers根据半径绘制圆形,多圆连线并标记距离
  19. AWS是如何引领云计算的?
  20. angularjs修改html标签,angularjs sanitize+ng-bind-html内置指令做html标签转义

热门文章

  1. 康托展开详解 -csdn博客
  2. OTB和VOT的评估指标
  3. ubuntu使用meld/beyond compare 做git的diff工具
  4. 多重比较示例:Bonferroni校正法和Benjamini Hochberg法
  5. 获诱人的实习 offer 、在 Kaggle 推 AI大 赛,大二学生如何做到?
  6. 网络及其服务配置------网络配置
  7. linux传不上去文件,linux下上传文件,文件上传不上去
  8. 树莓派开机黑屏问题解决
  9. 一文搞懂PMP挣值管理那些让你头疼的公式
  10. Matlab 矩阵的表示