Problem:
Swapping Two Numbers

Write a program which reads two integers x and y, and prints them in ascending order.

Input

The input consists of multiple datasets. Each dataset consists of two integers x and y separated by a single space.

The input ends with two 0 (when both x and y are zero). Your program should not process for these terminal symbols.

Output

For each dataset, print x and y in ascending order in a line. Put a single space between x and y.

Constraints

0 ≤ x, y ≤ 10000

the number of datasets ≤ 3000

Sample Input

3 2
2 2
5 3
0 0

Sample Output

2 3
2 2
3 5

Solution in JAVA (judge verdict: Accepted)

import java.io.BufferedInputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
 
public class Main{
	public static void main(String[] args) {
        Scanner scan = new Scanner(new BufferedInputStream(System.in));
        List<String> output = new ArrayList<String>();
        while (scan.hasNext()) {
            String input = scan.nextLine();
            String[] inarr = input.split(" ");
            int x = Integer.parseInt(inarr[0]);
            int y = Integer.parseInt(inarr[1]);
            if (x >= 0 && x <= 10000 && y >= 0 && y <= 10000) {
                if (x == 0 && y == 0) {
                    break;
                } else {
                    if (x < y) {
                        String inVal = String.valueOf(x) + " " + String.valueOf(y);
                        output.add(inVal);
                    } else if (x > y) {
                        String inVal = String.valueOf(y) + " " + String.valueOf(x);
                        output.add(inVal);
                    } else {
                        output.add(input);
                    }
                }
            }
        }
        if (output.size() <= 3000) {
            for (String out : output) {
                System.out.println(out);
            }
        }
    }
 
}