欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

POJ_Prob.ID:1000 A+B Problem

程序员文章站 2022-06-21 22:25:41
...

A+B Problem

**Time Limit:** 1000MS **Memory Limit:** 10000K
**Total Submissions:** 498343 **Accepted:** 281415

Description

Calculate a+b

Input

Two integer a,b (0<=a,b<=10)

Output

Output a+b

Sample Input

1 2

Sample Output

3

Hint

Q: Where are the input and the output?

A: Your program shall always read input from stdin (Standard Input) and write output to stdout (Standard Output). For example, you can use ‘scanf’ in C or ‘cin’ in C++ to read from stdin, and use ‘printf’ in C or ‘cout’ in C++ to write to stdout.

You shall not output any extra data to standard output other than that required by the problem, otherwise you will get a “Wrong Answer”.

User programs are not allowed to open and read from/write to files. You will get a “Runtime Error” or a "Wrong Answer"if you try to do so.

solution

#include<stdio.h>
#include<algorithm>
#include<iostream>
#define MAX_N 10000
using namespace std;
int N,R;
int X[MAX_N];


int main()
{
	while(scanf("%d %d",&R,&N)&&N!=-1&&R!=-1)
	{
		for(int i=0;i<N;i++)  cin>>X[i];
		
		sort(X,X+N);
		int i=0, ans=0;
		while(i<N){
			int s=X[i++];
			while(i<N&&X[i]<=s+R) i++;
			int p =X[i-1];
			while(i<N&&X[i]<=p+R) i++;
			ans++;
		
		} 
		printf("%d\n",ans);
	}
	return 0;
} 
相关标签: 刷题