코드업 1405번 문제
배열이 주어지면 배열의 위치를 한칸씩 옮겨서 출력
ex) {1,2,3}
1 2 3 4
2 3 4 1
3 4 2 1
4 1 2 3
public class CodeUp_1405 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int[] arr = new int[num];
//배열 입력
for(int i=0; i<num; i++) {
arr[i] = sc.nextInt();
}
//배열 출력
for(int i=0; i<num; i++) {
for(int k=i; k<num; k++) {
System.out.print(arr[k] + " ");
}
for(int j=0; j<i; j++) {
System.out.print(arr[j] + " ");
}
System.out.println();
}
}
}
계속 실행중 에러(java.lang.ArrayIndexOutOfBoundsException: 1)가 떴다
이유를 찾아보니 첫번째 for문에서 범위를 num이 아닌 5로 지정해놓았었다
왜 5로 지정을 했었냐면.. 예시정답에서 행이 5칸이어서 일단 5로 지정해놓았기 때문이었다
예시만 생각하고 다른 케이스가 많다는걸 인지하지 못해서 거의 20분동안 에러를 찾았었다.
항상 테스트 케이스는 유동적으로 나오기때문에 조심하자