//Sample Code Of Methods
import java.util.*;
public class SampleMethod {
public static void arrayPrintInt(int[] arr) {
for(int i = 0; i<arr.length; i++) {
System.out.print(arr[i]+" ");
}
System.out.println();
System.out.println("There are "+arr.length+" total arrays");
}
public static int[] ArrayInputInt() {
Scanner input = new Scanner(System.in);
int arrinital[] = new int[10000000];
int in = 0;
System.out.print("Enter Array: ");
while(true) {
arrinital[in] = input.nextInt();
if (arrinital[in] == 0) {
break;
}
in++;
}
input.close();
int finalarr[] = new int[in];
for (int i = 0; i<finalarr.length; i++) {
finalarr[i] = arrinital[i];
}
return finalarr;
}
public static void CrackStoneSort_Int(int[] arr) { //CrackStone Sort Algorithm By Regie Buo
int sort[] = new int[arr.length];
boolean[] used = new boolean[arr.length];
for (int i = 0; i<arr.length; i++) {
int SI = 0;
for (int j = 1; j<arr.length; j++) {
if (((arr[SI] > arr[j]) && (!used[j]) && (arr[SI] != arr[j])) || ((used[SI])) ) {
SI = j;
}
}
sort[i] = arr[SI];
used[SI] = true;
}
for (int i = 0; i<sort.length; i++) {
arr[i] = sort[i];
}
}
public static void main(String[] Args) {
int a[] = ArrayInputInt();
CrackStoneSort_Int(a);
arrayPrintInt(a);
}
}