Problem:
Score : 200 points

Problem Statement

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 \leq A \leq B \leq 10^9

1 \leq K \leq 100

All values in input are integers.

Input

Input is given from Standard Input in the following format:

A B K

Output

Print all the integers that satisfies the condition above in ascending order.

Sample Input 1

3 8 2

Sample Output 1

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.

Sample Input 2

4 8 3

Sample Output 2

4
5
6
7
8

Sample Input 3

2 9 100

Sample Output 3

2
3
4
5
6
7
8
9

Solution in C (GCC 5.4.1) (judge verdict: Accepted)

#include <stdio.h>
int noa(){
	char s[32];
	int a=0,b=0,c=0;
	scanf("%s\n", s);
	for(int i =0;i<strlen(s);i++){
	   // printf("%c[%d][%d][%d]\n",s[i],a,b,c );
		if(s[i] == 'a'){
			a++;
			continue;
		}
		if(s[i] == 'b'){
			b++;
			continue;
		}
		if(s[i] == 'c'){
			c++;
			continue;
		}
	}
	if(a == b && b == c){
		printf("%s\n","Yes" );
		return 0;
	}else{
		printf("%s\n","No" );
		return 0;
	}
}
int nob(){
	// A  以上 B 以下の整数の中で、小さい方から K 番目以内であるか、大きい方から K 番目以内である
	// A B K
	int A,B,K;
	int i2;
	scanf("%d %d %d\n",&A,&B,&K );
// 	printf("%d %d %d\n",A,B,K );
// 	i2 = A;
	for(int i=A;i<=B;i++){
		if(i < A+K && i <= B){
			//小さい方からK番目(A~K)
			printf("%d\n", i);
			continue;
		}
		if(i > B-K && i<= B){
			//大きい方からK番目(A~K)
			printf("%d\n", i);
// 			i2 = i;
			continue;
		}
	}
}

int main(void){
	// Your code here!
	nob();
	return 0;

}