P2074 危险区域
1.题目如下:
思路:
1.以前遇到过,不过用了数组,结果可想而知
2.其实可以不用数组,毕竟只统计一次最差的结果。
炸弹炸得范围是圆形,我们可以用枚举,将它转化为正方形
3.注意那个n,m;当我们不知道何去何从,直接看样例!!!
代码:
#include<cstdio> #include<cmath> #include<iostream> using namespace std; main(){ int n,m,k,t; int sum=0; cin>>n>>m>>k>>t; int x,y; int maxn=0; while(k--) { cin>>x>>y; for(int i=max(1,x-t);i<=min(n,x+t);i++) for(int j=max(1,y-t);j<=min(m,y+t);j++) { if(sqrt((x-i)*(x-i)+(y-j)*(y-j))<=t) sum++; } maxn=max(maxn,sum); sum=0; } cout<<maxn<<endl; return 0; }
无聊就学习 反正没事干