标签:out each its 分享 case jin inf cart center
| Time Limit: 1000MS | Memory Limit: 10000K | |
| Total Submissions: 54593 | Accepted: 12292 |
Description
Input
Output
Sample Input
3 2 1 2 -3 1 2 1 1 2 0 2 0 0
Sample Output
Case 1: 2 Case 2: 1
Source
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <algorithm>
#define maxn 1010
using namespace std;
struct Node {
double u, v;
friend bool operator<(const Node& a, const Node& b) {
return a.u < b.u;
}
} E[maxn];
int N, D;
int main() {
int i, ok, id, ans, cas = 1;
double x, y, d, flag;
while(scanf("%d%d", &N, &D), N) {
printf("Case %d: ", cas++);
ok = 1; id = 0;
for(i = 0; i < N; ++i) {
scanf("%lf%lf", &x, &y);
if(y > D) ok = 0;
if(!ok) continue;
d = sqrt(D * D - y * y);
E[id].u = x - d;
E[id++].v = x + d;
}
if(!ok) {
printf("-1\n");
continue;
}
sort(E, E + id);
flag = E[0].v; ans = 1;
for(i = 1; i < N; ++i) {
if(E[i].u <= flag) {
if(E[i].v <= flag) flag = E[i].v;
continue;
}
++ans; flag = E[i].v;
}
printf("%d\n", ans);
}
return 0;
}POJ1328 Radar Installation 【贪心·区间选点】
标签:out each its 分享 case jin inf cart center
原文地址:http://www.cnblogs.com/yutingliuyl/p/6758699.html