작성
·
300
0
안녕하세요 제가 작성한 코드에 어디가 문제인지 잘 모르겠어 질문합니다.
선생님께서 풀어 주신 방법과 거의 비슷하게 푼것 같은데 어디가 잘못 됐는지 모르겠습니다.(저는 깊은 복사 대신 새로운 객체를 만들었습니다.)
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public ArrayList<Integer> solution(int n, int[] arr) {
ArrayList<Integer> answer = new ArrayList<>();
int[] tmp = new int[n];
for(int i=0; i<n; i++) {
tmp[i] = arr[i];
}
Arrays.sort(arr);
for(int i=0; i<n-1; i++) {
if(tmp[i]!=arr[i]) {
answer.add(i+1);
}
}
return answer;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Main T = new Main();
Scanner kb = new Scanner(System.in);
int n = kb.nextInt();
int[] arr = new int[n];
for(int i=0; i<n; i++) {
arr[i] = kb.nextInt();
}
for(int x:T.solution(n, arr)) {
System.out.print(x+" ");
}
}
}