【OJ】贪心法 Saruman's Army POJ 3069 /acmclub 12132

简介: 题目链接:点击打开链接 /* 6 10 贪心法Saruman's Army POJ 3069 1 7 15 20 30 50 ans=3*/#include#includeusing namespace std;int x[1010];int main(){// freopen("贪心法 Saruman's Army poj3069.

题目链接:点击打开链接


/*		
6 10		 贪心法Saruman's Army POJ 3069 
1 7 15 20 30 50	
ans=3
*/
#include<iostream>
#include<algorithm>
using namespace std;
int x[1010];
int main(){
//	freopen("贪心法 Saruman's Army poj3069.txt","r",stdin);

	int n,r;
  while(cin>>r>>n,n!=-1&&-1!=r){
	for(int i=0;i<n;i++){
		cin>>x[i]; 
	}
	sort(x,x+n);
	int i=0,ans1=2100000000,ans2=0;//2100000000;
//
//	while(i<n){//左向右 
//		int start=x[i];
//		while(i<n&&x[i]<=start+r)i++;
//		int point=x[i-1];
//		while(i<n&&x[i]<=point+r)i++;
//		ans1++;
////		cout<<point<<" "; 
//	}
//
	i=n-1;     //右向左 
	while(i>=0){
		int start=x[i];
		while(i>=0&&x[i]>=start-r)i--;
		int point=x[i+1];
		while(i>=0&&x[i]>=point-r)i--;
		ans2++;
//		cout<<point<<" ";
	}
	
	cout<<min(ans1,ans2)<<endl;
  }
	return 0;
}



目录
相关文章
|
6月前
|
Java C++
poj 1503 高精度加法
把输入的数加起来,输入0表示结束。 先看我Java代码,用BigINteger类很多东西都不需要考虑,比如前导0什么的,很方便。不过java效率低点,平均用时600ms,C/C++可以0ms过。
16 1
|
6月前
poj 1990 MooFest 树状数组
题意就是有N头牛,每头牛都有一个坐标和声调值(x, v),两头牛之间通讯要花费的能量是他们的距离乘以最大的一个音调值,现在要任意两头牛之间都相互通讯一次,求总共需要花费多少能量?
20 0
LeetCode每日一题——812. 最大三角形面积
给定包含多个点的集合,从其中取三个点组成三角形,返回能组成的最大三角形的面积。
57 0
LeetCode每日一题——812. 最大三角形面积
|
存储
POJ-3641,Pseudoprime numbers(快速幂)
POJ-3641,Pseudoprime numbers(快速幂)
F-POJ-3414 Pots
POJ-3414 Time Limit:1000 ms Memory Limit:65536 K Description You are given two po...
971 0
|
Java 测试技术
HDU 1248 寒冰王座(完全背包裸题)
寒冰王座 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17092    Accepted Submission(s): 8800 ...
1185 0

热门文章

最新文章