전공공부
[BOJ_2164] 카드2 본문
설명
FIFO 처음 들어온 것이 가장 먼저 나가니 Queue의 형태를 사용했다. 다시 맨 앞의 것을 맨 뒤에 넣고 다시 맨 앞의 것을 빼서 내려 놓고를 반복하기 때문에 큐를 썼다.
코드
package Data_Structure;
import java.util.*;
import java.io.*;
public class BOJ_2164 {
public static void main(String[] args) throws Exception{
Queue<Integer> q = new LinkedList<>();
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(in.readLine());
for(int i = 1; i <= N; i++){
q.add(i);
}
int ans = 0;
while(!q.isEmpty()){
ans = q.poll();
if(!q.isEmpty()){
int tmp = q.poll();
q.add(tmp);
}
}
System.out.print(ans);
}
}
2164번: 카드2
N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가
www.acmicpc.net
'Study > Problem Solving' 카테고리의 다른 글
[BOJ_10866] 덱 (0) | 2023.10.21 |
---|---|
[BOJ_9012] 괄호 (1) | 2023.10.21 |
[BOJ_18258] 큐2 (0) | 2023.10.19 |
[BOJ_10828] 스택 (0) | 2023.10.18 |
[BOJ_17136] 색종이 붙이기 (0) | 2023.10.17 |