https://school.programmers.co.kr/learn/courses/30/lessons/120843
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
나의 풀이
import java.util.LinkedList;
import java.util.Queue;
class Solution {
public int solution(int[] numbers, int k) {
int answer = 0;
Queue<Integer> q = new LinkedList<>();
for (int num : numbers) q.offer(num);
for (int i = 0; i < k-1; i++) {
q.offer(q.poll());
q.offer(q.poll());
}
if (!q.isEmpty()) {
answer = q.poll();
}
return answer;
}
}
다른 풀이
import java.util.stream.IntStream;
class Solution {
public int solution(int[] numbers, int k) {
return IntStream.range(1, k).mapToObj(i -> numbers).flatMapToInt(IntStream::of).toArray()[2 * k - 2];
}
}
class Solution {
public int solution(int[] numbers, int k) {
return (k-1)*2 % numbers.length+1;
}
}