hdu——4462(暴力枚举)
来源:互联网 发布:伺服控制需要编程吗 编辑:程序博客网 时间:2024/06/08 01:11
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4462
解析:不知道为什么正确的程序被判成W了,后来再提交W的程序就过了。(囧啊)。
#include <iostream>#include <cmath>#include <string>#include <cstring>#include <algorithm>#include <cstdio>using namespace std;typedef long long ll;#define INF 0xfffffff#define MAX(a,b) a>b?a:b#define MIN(a,b) a>b?b:a#define N 50#define M 100struct Point{int x,y,r;}a[N];int n,k;int visited[M][M];int Abs(int t){if(t<0) t=-t;return t;}void Vis(int v){int i,j;for(i=1;i<=n;i++) for(j=1;j<=n;j++) { if(visited[i][j]) continue; if((Abs(i-a[v].x)+Abs(j-a[v].y))<=a[v].r) visited[i][j]=1; }}void solve(){int ed=1<<k;int min=INF;for(int i=0;i<ed;i++){ //相当于dfs,枚举所有可能memset(visited,0,sizeof(visited));for(int j=0;j<k;j++) visited[a[j].x][a[j].y]=1;int mid=i,j=0,count=0;while(mid>0){if(mid&1) {Vis(count);j++;}count++;mid=mid/2;}if(j>=min) continue; //此时直接continue掉就可以int flag=1;for(int ii=1;ii<=n&&flag;ii++) for(int jj=1;jj<=n;jj++) if(!visited[ii][jj]){ flag=0; break; }if(flag) min=j;}if(min==INF) cout<<"-1"<<endl; else cout<<min<<endl;}int main(){ int i,j; while(cin>>n&&n){ cin>>k; for(i=0;i<k;i++) cin>>a[i].x>>a[i].y; for(i=0;i<k;i++) cin>>a[i].r; solve(); } return 0;}
- hdu——4462(暴力枚举)
- HDU 4445——Crazy Tank(数学题,暴力枚举)
- hdu 4968(暴力枚举)
- hdu 4462 Scaring the Birds # 暴力枚举(状压)
- HDU 5778 abs(暴力枚举)——BestCoder Round #85 1003
- HDU 3697(H) ——Selecting courses(暴力枚举,贪心)
- hdu - 4608 - I-number(暴力枚举)
- HDU 1172 猜数字(暴力枚举)
- hdu 4445 Crazy Tank (暴力枚举)
- HDU 4445 - Crazy Tank(暴力枚举)
- HDU 5310 Hidden String(暴力枚举)
- HDU 5522 Numbers (暴力枚举)
- HDU 2335 Containers(暴力枚举)
- HDU 5319 Painter(暴力枚举)
- HDU 5778 abs (数学+暴力枚举)
- HDU 4007 Dave (暴力枚举)
- HDU 5254 棋盘占领(暴力枚举)
- HDU 5778 abs (暴力枚举)
- SqlDateTime 溢出:必须介于 1/1/1753 12:00:00 AM 和 12/31/9999 11:59:59 PM 之间
- 转载给ffmpeg入门级:我的第一个调用FFmpeg库的程序出炉
- mysql archive存储引擎安装/使用
- ExtJS 组件的扩展和继承
- hdu1150解题报告--也可以说小白理解最小点覆盖学习总结
- hdu——4462(暴力枚举)
- cocos2d-x 函数指针 typedef CCLayer* (*NEWTESTFUNC)() 解释
- poj3254 Corn Fields
- C++学习笔记十三-复制控制
- Linux下Fork与Exec使用
- POJ 3580 SuperMemo
- 在Windows上搭建Android的JAVA开发环境图文教程(Eclipse版本)
- Android Handler、Message完全解析,带你从源码的角度彻底理解
- 多进程引用的动态链接库中的全局变量问题