FireDrago
Lv0 - 공던지기 (자바) 본문
문제설명
머쓱이는 친구들과 동그랗게 서서 공 던지기 게임을 하고 있습니다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그다음 사람에게만 던질 수 있습니다. 친구들의 번호가 들어있는 정수 배열 numbers와 정수 K가 주어질 때, k번째로 공을 던지는 사람의 번호는 무엇인지 return 하도록 solution 함수를 완성해보세요.
입출력 예
| numbers | k | result |
| [1,2,3,4] | 2 | 3 |
| [1,2,3,4,5,6] | 5 | 3 |
| [1,2,3] | 3 | 2 |
생각정리
1. 인덱스가 0,2,4,6,8 ........ (2k-2) 로 증가한다. 문제는 주어진 배열은 인덱스가 한계가 있다는점
2. 인덱스를 반복해야 한다는 점에서 % (나머지) 가 떠오른다. 인덱스를 배열의 길이만큼 나눈 나머지를 구해서
배열의 값을 찾으면 되겠다.
class Solution {
public int solution(int [] numbers, int k) {
int count =2*k-2;
if (count > numbers.length-1) {
count %= numbers.length;
}
int answer = numbers[count];
return answer;
}
}'코딩테스트 > 프로그래머스' 카테고리의 다른 글
| Lv0 - 소인수분해 (0) | 2023.06.13 |
|---|---|
| Lv0 - 중복문자 제거 (자바) (0) | 2023.06.12 |
| Lv0 - 팩토리얼 (자바) (0) | 2023.06.07 |
| Lv0 - 약수 구하기 (약수 알고리즘)(자바) (0) | 2023.06.06 |
| Lv0 - 외계행성의 나이 (자바) (0) | 2023.06.06 |
