Vienna
프로그래머스) 배열 회전시키기 본문
https://school.programmers.co.kr/learn/courses/30/lessons/120844?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
◇ 문제 설명
정수가 담긴 배열 numbers와 문자열 direction가 매개변수로 주어집니다. 배열 numbers의 원소를 direction방향으로 한 칸씩 회전시킨 배열을 return하도록 solution 함수를 완성해주세요.
◇ 제한사항
- 3 ≤ numbers의 길이 ≤ 20
- direction은 "left" 와 "right" 둘 중 하나입니다.
◆ 풀이
여러가지 방법 중 어떤 것을 택할지 고민되었다.
그중 내가 택한 방법은 참조할 시작 인덱스를 미리 정해두고 반복문을 돌면서 1씩 증가시키는 방법이다.
class Solution {
public int[] solution(int[] numbers, String direction) {
int count = numbers.length;
int[] result = new int[count];
int index = "right".equals(direction) ? count-1 : 1;
for(int i = 0; i<count; i++){
result[i] = numbers[index++];
index%=count;
}
return result;
}
}
'알고리즘 문제 풀이' 카테고리의 다른 글
프로그래머스) 문자열안에 문자열 (0) | 2023.05.24 |
---|---|
백준5613번) 계산기 프로그램 (0) | 2023.05.24 |
프로그래머스) 한 번만 등장한 문자 (0) | 2023.05.24 |
백준10807번) 개수 세기 (1) | 2023.05.16 |
백준2830번) 행성 X3 (0) | 2023.05.16 |
Comments