import java.util.Random;


/*
To run this example please use : 
	java  -Xmx256m SpeedTest
*/
public class SpeedTest{
public static void main(String []args){
	int l2n=24;
	if(args.length<=0){
		System.err.println("You need to specify at least to arguments, using the default value 24");
	}else{
	try{
		l2n=Integer.parseInt(args[0]);
	}catch(NumberFormatException e){
		System.err.println("\""+args[0]+"\" seems not to be an integer, using by default 24");
	}
	}
	if(l2n>26){
		System.err.println("Too big argument");
		System.exit(1);
	}
	long [] data=new long[1<<l2n];
	Random r=new Random();
	for(int i=0;i<5;i++){
		data[i]=r.nextInt()%1000;
	}
	long sum=0;
	long starttime=System.nanoTime();
	for(int i=0;i<data.length;i++){
		sum+=data[i];
	}
	long endtime=System.nanoTime();
	double time=(endtime-starttime);
	System.out.println(time/(data.length)+"ns");
}
}

