部落卫队 解题报告
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int n,m,i,ans,maxn,x,y;
int a[100][100],b[100],d[100],f[100];void dfs(int dep)
{int r;if (dep==n+1){if (maxn>ans)//这里不难理解{ans=maxn;for (i=1;i<=n;++i)d[i]=b[i];}return;}if (maxn+n-dep+1<ans) return;//最优化剪枝,如果当前选好的人加上还没有搜索到的人还小于当前已知的最大值的话,if (!f[dep]) //就直接退出,不用继续搜索了 {b[dep]=1;maxn++;for (r=1;r<=n;++r)//选了一个人,那就把他所有的仇人的f[i]+1if (a[dep][r]==1)f[r]++;//巧妙之处!!!dfs(dep+1);for (r=1;r<=n;++r)//回溯一步if (a[dep][r]==1)f[r]--;maxn--;}b[dep]=0;//这是当前的人不选的情况,直接搜索下一层dfs(dep+1);//dep是按人搜索
}int main()
{<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
scanf("%d%d",&n,&m);for (i=1;i<=m;++i){scanf("%d%d",&x,&y);a[x][y]=1;//存储仇敌关系a[y][x]=1;}dfs(1);printf("%d\n",ans);for (i=1;i<=n;++i)printf("%d ",d[i]);return 0;
}
部落卫队 解题报告相关推荐
- 5-3 部落卫队问题 (25 分)
原始部落byteland中的居民们为了争抢有限的资源,经常发生冲突.几乎每个居民都有它的仇敌.部落酋长为了组织一支保卫部落的队伍,希望从部落的居民中选出最多的居民入伍,并保证队伍中任何两个人都不是仇敌 ...
- uscao 线段树成段更新操作及Lazy思想(POJ3468解题报告)
线段树成段更新操作及Lazy思想(POJ3468解题报告) 标签: treequerybuildn2cstruct 2011-11-03 20:37 5756人阅读 评论(0) 收藏 举报 分类: ...
- 解题报告(十八)数论题目泛做(Codeforces 难度:2000 ~ 3000 + )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 【解题报告系列】超高质量题单 + 题解(ACM / OI)超高质量题解
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我新写的超高质量的题解和代码,题目难度不 ...
- 解题报告(三)多项式求值与插值(拉格朗日插值)(ACM / OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(十三)中国剩余定理(ACM / OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(四)生成函数(ACM/ OI)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量的题解和代码,题目难度不一 ...
- 解题报告(八) prufer 序列与 Cayley 公式(ACM / OI)超高质量题解
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
- 解题报告(一)E、(BZOJ4589)Hard Nim(博弈论 + FWT)
繁凡出品的全新系列:解题报告系列 -- 超高质量算法题单,配套我写的超高质量题解和代码,题目难度不一定按照题号排序,我会在每道题后面加上题目难度指数(1∼51 \sim 51∼5),以模板题难度 11 ...
最新文章
- 摊手:工作五年我拿了两次 N+1 赔偿!
- json格式值班表解析
- linux服务器视窗,linux窗口管理器介绍
- html5中底部对齐怎么写,如何将页脚(div)与页面底部对齐?
- IOS基础之Foundation框架常用类NSFileManager,DSDate,CGPoint,CGSize,copy,单例
- 插件开发 之 生成代码
- python用什么编译器-python应选什么编译工具
- 使用nginx负载均衡的webservice wsdl访问不到_Nginx 反向代理、负载均衡图文教程,写得太好了!...
- spring boot 搭建博客
- Word中把竖排文字里的数字变横向
- < 数据结构 > 队列的实现
- IP网络摄像机安装注意事项
- 非QQ会员如何克隆好友
- C#计算一年有多少周
- div盒模型宽高计算
- android 使用iphone线控耳机,耳机 篇一:关于安卓手机怎么用苹果专用耳机的问题...
- 效率(1)Excel常用操作技巧
- Linux如何挂载exFAT格式移动硬盘
- frp内网穿透服务使用
- 浏览器微信下载安装的解决办法