앞으로 매일 꾸준히 코딩테스트를 진행하면서 단계를 높여가보자.
정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.

class Solution {
public int[] solution(int[] numbers, String direction) {
int[] answer = new int[numbers.length];
if(direction.equals("right")) {
answer[0] = numbers[numbers.length - 1];
for(int i = 1; i < answer.length; i++) {
answer[i] = numbers[i - 1];
}
} else {
answer[numbers.length - 1] = numbers[0];
for(int i = 0; i < answer.length -1; i++) {
answer[i] = numbers[i + 1];
}
}
return answer;
}
}
문제의 규칙 찾기.
1) right의 경우 [1,2,...,9] -> [9,1,2,...,8]이 된다.
answer[0]이 numbers[마지막]
answer[1]이 numbers[0]
answer[2]이 numbers[1]
...
즉, i에서 1씩 차이가 난다.
answer[i] = numbers[i-1];
다만, answer[i]가 0일 때는 배열의 마지막 요소를 넣는다.
answer[0] = numbers[numbers.length - 1];
2) left의 경우 [1,2,...,9] -> [2,3,...,1]이 된다.
answer[0]이 numbers[1]
answer[1]이 numbers[2]
...
answer[마지막]이 numbers[0]
즉, i에서 1씩 차이가 난다.
answer[i] = numbers[i+1];
다만, answer[i]가 마지막일 때는 배열의 첫 번째 요소를 넣는다.
answer[numbers.length - 1] = numbers[0];
3) right와 left일 때의 조건을 나눈 뒤에 반복문으로 풀어준다.