博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
uva10382 Watering Grass
阅读量:5954 次
发布时间:2019-06-19

本文共 735 字,大约阅读时间需要 2 分钟。

题意:有一块草坪,长为l,宽为w,再起中心线的不同位置处装有n个点状的喷水装置。每个喷水装置i可以将以它为中心,半径为ri的圆形区域润湿,请选择尽量少的喷水装置,把整个草坪全部润湿。

分析:对于直径小于宽度的喷水装置其实可以忽略,剩下的问题转换成了最小区间覆盖问题,即:用最少数量的区间去覆盖给定的区间

1 #include 
2 #include
3 #include
4 #include
5 #define zz 6 using namespace std; 7 const int MAXN = 11111; 8 pair
a[MAXN]; 9 int main(){10 #ifndef zz11 freopen("in.txt", "r", stdin);12 #endif13 int n;14 double l, w;15 while(scanf("%d%lf%lf", &n, &l, &w)!=EOF){16 int i, j, m = 0;17 for(i=0; i
up) break;30 if(a[i].second>up){31 for(j=i; j
<=low; j++)32 if(up
=l) {flag = true; break;}35 low = up;36 }37 }38 if(flag) printf("%d\n", cnt);39 else puts("-1");40 }41 }

 

转载地址:http://uuexx.baihongyu.com/

你可能感兴趣的文章
PCA
查看>>
ajax上传文件
查看>>
java中通过绝对路径将图片存入数据库
查看>>
ConcurrentHashMap(Java8)源码分析
查看>>
Python文件处理之文件指针(四)
查看>>
Numpy用法详解
查看>>
DataGridView在vb.net中的操作技巧
查看>>
PMP考试冲刺进行中。。。
查看>>
大换血的代价
查看>>
RunLoop--
查看>>
chrome 2行换行省略号 ... text-ellipse
查看>>
C语言第四次作业
查看>>
Java学习-集合的理解
查看>>
iOS验证码倒计时(GCD实现)
查看>>
iOS中的过滤器和正则表达式(NSPredicate,NSRegularExpression)
查看>>
canvas和svg
查看>>
结对:复利美化版
查看>>
HDU_2689_Sort it
查看>>
urllib模块使用笔记
查看>>
mysql 连接慢的问题(超过了1秒)
查看>>