1.题目描述
问题 A: Small and Large Integers
时间限制: 1.000 Sec 内存限制: 128 MB
题目描述
Print all the integers that satisfies the following in ascending order:
Among the integers between A and B (inclusive), it is either within the K smallest integers or within the K largest integers.
Constraints
1≤A≤B≤109
1≤K≤100
All values in input are integers.
输入
Input is given from Standard Input in the following format:
A B K
输出
Print all the integers that satisfies the condition above in ascending order.
样例输入 Copy
3 8 2
样例输出 Copy
3 4 7 8
提示
3 is the first smallest integer among the integers between 3 and 8.
4 is the second smallest integer among the integers between 3 and 8.
7 is the second largest integer among the integers between 3 and 8.
8 is the first largest integer among the integers between 3 and 8.
2.代码
#include <iostream>
#include <algorithm>
using namespace std;
int main() {
int A,B,k,a[300],n=0;
cin>>A>>B>>k;
for(int j=1,i=A;i<=B;i++,j++)
{
a[n] = i;
n++;
if(j==k) break;
}
for(int j=1,i=B;i>=A;i--,j++)
{
a[n] = i;
n++;
if(j==k) break;
}
sort(a,a+n);
for(int i=0;i<n;i++)
{
if((i!=0&&a[i]!=a[i-1])||i==0)
cout<<a[i]<<endl;
}
return 0;
}