728x90
반응형
백준
https://www.acmicpc.net/problem/1158
- 오늘의 학습 키워드 : queue
- 공부한 내용 본인의 언어로 정리하기
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.LinkedList;
import java.util.Queue;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringTokenizer st = new StringTokenizer(br.readLine());
int N = Integer.parseInt(st.nextToken());
int K = Integer.parseInt(st.nextToken());
Queue<Integer> queue = new LinkedList<>();
StringBuilder sb = new StringBuilder();
sb.append("<");
for (int i=1; i<=N; i++) queue.add(i); // 1 ~ N까지의 수 저장
while (true) {
if (queue.size() == 1) { // queue가 1개 남은 경우
sb.append(queue.poll()).append(">");
break;
}
int cnt = 1;
while (true) {
if (cnt == K) { // K번째인 경우 제거되는 순서 값 저장
sb.append(queue.poll()).append(", ");
break;
} else { // K번 만큼 요세푸스 순열 동작
cnt++;
queue.add(queue.poll());
}
}
}
System.out.println(sb);
}
}
- 오늘의 회고 : 자료 구조 중, queue에 대해서 복습할 수 있는 문제
99클럽 1기를 수강하면서 작성한 글입니다.
728x90
반응형
'Blog > Education' 카테고리의 다른 글
99클럽 코테 스터디 31일차 TIL + 백트래킹 (0) | 2024.04.24 |
---|---|
99클럽 코테 스터디 30일차 TIL + DFS (0) | 2024.04.23 |
99클럽 코테 스터디 28일차 TIL + 경우의 수 (0) | 2024.04.21 |
99클럽 코테 스터디 27일차 TIL + 구현 (0) | 2024.04.20 |
99클럽 코테 스터디 26일차 TIL + 그리디 알고리즘 (0) | 2024.04.19 |
댓글