POJ 3069 Saruman's Army

发布时间:2016-12-8 0:23:54 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"POJ 3069 Saruman's Army",主要涉及到POJ 3069 Saruman's Army方面的内容,对于POJ 3069 Saruman's Army感兴趣的同学可以参考一下。

题目: http://poj.org/problem?id=3069 题解: 1.选择起始点,从最左边的点开始,R距离内要有标记点,标记点为R距离内最右侧的点。 2.标记点R距离内的点都已覆盖到,去掉,重新选择起始点。循环第一步。 代码: #include<stdio.h> #include<algorithm> int a[1010]; int N,R; void solve() { std::sort(a,a+N); int i=0,sum=0; while(i<N) { int s=a[i++]; while(i<N&&a[i]<=s+R) i++; int p=a[i-1]; while(i<N&&a[i]<=p+R) i++; sum++; } printf("%d\n",sum); } int main() { while(scanf("%d%d",&R,&N),N!=-1&&R!=-1) { for(int i=0;i<N;i++) scanf("%d",&a[i]); solve(); } return 0; }

上一篇:十个让你变成糟糕的程序员的行为
下一篇:POJ 3641 Pseudoprime numbers 测试费马小定理伪素数

相关文章

相关评论