본문 바로가기

프로그래밍116

[백준/C,C++] 1021번: 회전하는 큐 www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net C++에서 제공되는 deque container를 사용하여 쉽게 해결할 수 있습니다. deque dq; int res; void moveLeft(int cnt) { for (int i = 0; i < cnt; i++) { dq.push_back(dq.front()); dq.pop_front(); res++; } } void moveRight(int cnt) { for (int i = 0; i < cnt; i.. 2021. 3. 16.
[백준/C,C++] 10866번: 덱 www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net hackids.tistory.com/3 [백준/C,C++] 10828번: 스택 www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000.. hackids.tistory.com hackids.tistor.. 2021. 3. 16.
[백준/C,C++] 1966번: 프린터 큐 www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 현재 인쇄 명령의 우선순위가 가장 높으면 인쇄를 하고 아니면 맨 뒤로 보냅니다. 이 중 최초로 입력된 명령들 중 m번째 명령이 몇 번째로 실행되는지 찾으면 되는 문제입니다. 예제 입력 중 두 번째의 경우로 살펴보겠습니다. 번호 0 1 2 3 우선 순위 1 2 3 4 queue에 위 표와 같은 형태로 push가 되어 있다고 가정합니다. 아마도 queue의 형태로 선언했을 겁니당. 여기서 높은 우선순위부터 저장되어있는.. 2021. 3. 16.
[백준/C,C++] 11866번: 요세푸스 문제 0 www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net STL인 vector로 쉽게 해결이 가능한 문제입니다. 현재 지울 번호는 (index + k - 1) % size로 나타낼 수 있는데, 예제의 입력대로 n이 7, k가 3인 경우로 생각해보겠습니다. 1 2 3 4 5 6 7의 수열 중 처음 지워지는 번호는 (0 + 2) % 7로 2번인 3이 됩니다. 다음은 1 2 4 5 6 7의 수열 중 지워지는 번호는 (2 + 2) % 6으로 4번인 6이 됩니다. 1 2 4 5 7의 수열 중 지워지는 번호는 (4 + 2) % 5로 1번인 2가 되죠. #incl.. 2021. 3. 15.