UVA 10382 Watering Grass 贪心
来源:互联网 发布:真有外星人吗 知乎 编辑:程序博客网 时间:2024/05/29 15:06
这么经典的贪心的,,
我又败在了书写代码上。。。
或者说我都没有很用心地分析写怎样的代码号。。
收货:
(1)看别人是如何用 i的。。。int i在外部,,这样i 自然就像是static一样定格了,
(2)别人居然考虑到了细节 就是2*r<w
.
(3) 如果不是自己敲了, 而只是看了别人的代码,还真的没有这些收货。
#include<algorithm>#include<string>#include<cstdio>#include<cstring>#include<iostream>#include<cmath>using namespace std;#define sf scanf#define pf printf#define mem(a,b) memset(a,b,sizeof(a));#define bug1 printf("bug1\n");#define eps 1e-8const int maxn=10005;int n,L,w;struct Node{ double l,r; bool friend operator <(Node a,Node b){ if(a.l==b.l)return a.r<b.r; return a.l<b.l; }}a[maxn];int main(){ while(~sf("%d%d%d",&n,&L,&w)){ int cnt=0; for(int i=1;i<=n;++i){ double p,r; sf("%lf%lf",&p,&r); if(2*r<=w)continue;//细节 a[++cnt].l=p-sqrt(r*r-w*w*0.25); a[cnt].r=p+sqrt(r*r-w*w*0.25); } sort(a+1,a+1+cnt); double len=0; int ans=0;int flag=0; int i=1;//******很好 while(len<L){ double maxl=0; for(;i<=cnt;++i){ if(a[i].l<=len){ maxl=max(maxl,a[i].r); } if(a[i].l>len)break; } if(maxl==0){flag=1;break;} ans++;len=maxl; } if(flag)puts("-1"); else pf("%d\n",ans); }}
0 0
- UVA 10382 - Watering Grass 贪心
- 10382 - Watering Grass uva贪心
- uva--10382Watering Grass+贪心
- UVA 10382 Watering Grass 贪心
- uva 10382 - Watering Grass(贪心)
- UVa 10382 - Watering Grass(贪心算法)
- UVA - 10382 Watering Grass 贪心+区间覆盖
- uva 10382 Watering Grass(贪心)
- UVA - 10382 Watering Grass(贪心)
- UVA 10382 Watering Grass (贪心)
- UVa 10382 Watering Grass
- UVa 10382 - Watering Grass
- UVa 10382 - Watering Grass
- uva 10382 - Watering Grass
- uva 10382 - Watering Grass
- Uva 10382 - Watering Grass
- Uva-10382-Watering Grass
- UVA 10382 Watering Grass
- JDBC连接MySQL数据库小例子
- Scala特征
- 内存与cpu工作原理
- css实现强制不换行/自动换行/强制换行
- 剑指Offer——(5)用两个栈实现队列
- UVA 10382 Watering Grass 贪心
- 正则表达式使用总结
- 运维学习第十一天
- allocated fishing
- GDOI2017酱油记+对本赛季的一些分析
- Bootstrap 前端框架制作响应式网站
- cc254x、cc2640微信airsync协议心得
- 老司机带你探知存储伸缩之道,赶紧上车,来不及了!
- Java 程序设计基础(第四版)上