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# (Mono 4.6.2.0) (judge verdict: Accepted)

using System;

class test {
    static void Main() {
        string[] s = Console.ReadLine().Split(' ');
        int[] n = new int[3];
        int i;
        for (i = 0; i < 3; i++) {
            n[i] = int.Parse(s[i]);
        }
        int[] ans;
        int size = n[1] - n[0] + 1;
        if (size > n[2] * 2) {
            ans = new int[n[2] * 2];
            for (i = 0; i < n[2]; i++) {
                ans[i] = n[0] + i;
            }
            for (i = 0; i < n[2]; i++) {
                ans[n[2]*2-1-i] = n[1] - i;
            }
        } else {
            ans = new int[size];
            for (i = 0; i < size; i++) {
                ans[i] = n[0] + i;
            }
        }
        for (i = 0; i < ans.Length; i++) {
            Console.WriteLine(ans[i]);
        }
    }
}