/*
 * $ java-introcs Driver 5 -
 * $ java-introcs -Xmx2g Driver 100000000 -
 */

import java.util.Arrays;

public class Driver {

    public static void main(String[] args) {
	int N = Integer.parseInt(args[0]);
	int[] a = new int[N];
	int[] b = new int[N];
	boolean verbose = args.length > 1;

	for (int i = 0; i < N; i++) 
	    a[i] = b[i] = StdRandom.uniform(Integer.MAX_VALUE);

	if (verbose)
	    for (int i = 0; i < Math.min(10, a.length); i++)
		StdOut.println(a[i]);

	Stopwatch stpw = new Stopwatch();
	Arrays.sort(a);
	StdOut.println("System sort: " + stpw.elapsedTime() + "s");
	if (verbose)
	    for (int i = 0; i < Math.min(10, a.length); i++)
		StdOut.println(a[i]);

	stpw = new Stopwatch();
	LSD.sort(b);
	StdOut.println("LSD sort: " + stpw.elapsedTime() + "s");
	if (verbose)
	    for (int i = 0; i < Math.min(10, b.length); i++)
		StdOut.println(b[i]);

    }

}
