Scanner scanner = new Scanner(System.in);
int input;
System.out.print("숫자 입력 : ");
input = scanner.nextInt();
int[] result = new int[input];
boolean[] isExist = new boolean[input];
int randomSize = input;
for (int i = 0; i < input; i++) {
int randNum = (int)(Math.random() * (randomSize - i));
int j;
for (j = 0; randNum > -1; j++) {
if (j >= randomSize) {
break;
}
if (isExist[j] == false) {
randNum--;
}
}
result[i] = j;
isExist[j - 1] = true;
}
// 실패 여부 검사
boolean isFail = false;
for (int i = 0; i < input; i++) {
for (int j = 0; j < input; j++) {
if (i != j
&& result[i] == result[j]) {
isFail = true;
}
}
}
// 실패하지 않은 경우 결과 출력
if (isFail == false) {
for (int i = 0; i < input; i++) {
System.out.print(result[i] + " ");
}
}