[BOJ/백준/C++] 1966번 프린터 큐
·
Coding Test/Baekjoon
1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net 📌 접근 방법 q를 이용하여 몇번째로 출력했는지 궁금한 출력물은 1, 아닌 출력물들은 0으로 구분해서 우선순위와 함께 넣어둔다. 벡터에도 따로 우선순위를 넣어둔다 우선순위대로 출력하게 하고, 카운팅한다 우선순위가 가장 큰 순서대로 출력하고 아니라면 맨 뒤로 넘긴다 몇번째로 출력했는지 궁금한 출력물이 출력될 때 반복문을 탈출해서 해당 카운트를 출력한다. ✅ Pass Code #include #include #include #include #include #includ..
[BOJ/백준/C++] 11866번 요세푸스 문제 0
·
Coding Test/Baekjoon
11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 📌 접근 방법 큐가 비워질 때까지 반복 카운팅(cnt)하여 cnt가 K로 나누어 떨어질 때 해당 수 출력할 것임. 해당 순서에 오지 않았을 경우 맨 앞의 수를 맨 뒤로 차례차례 보냄 cnt가 K로 나누어 떨어질 때 맨 앞에 있는 수를 출력(그동안 그 전의 숫자들은 맨 뒤로 옮겨짐) 큐가 빌 때까지 반복!! ✅ Pass Code #include #include #include #include #include #include #include #include #include #include #include using namespace std; int m..
[BOJ/백준/C++] 1874번
·
Coding Test/Baekjoon
1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net 📌 접근 방법 벡터에 스택 원리로 숫자를 쌓는다 현재 target으로 하는 숫자가 1에서 1씩 키워가면서 target이 벡터에 있는 숫자가 될 때까지 push를 해준다 임시 벡터에 push해줌 (string 변수에 + 저장) 벡터에 있는 숫자를 빼야하기 때문에 pop 해줌(string 변수에 - 저장) 다음 벡터에 있는 숫자가 임시 벡터의 top에 있을 경우 pop해주고 임시벡터에..
[BOJ/백준/C++] 20920번 영단어 암기는 괴로워
·
Coding Test/Baekjoon
20920번: 영단어 암기는 괴로워 첫째 줄에는 영어 지문에 나오는 단어의 개수 $N$과 외울 단어의 길이 기준이 되는 $M$이 공백으로 구분되어 주어진다. ($1 \leq N \leq 100\,000$, $1 \leq M \leq 10$) 둘째 줄부터 $N+1$번째 줄까지 외울 단 www.acmicpc.net 📌 접근 방법 N : 입력받을 단어의 개수 M : 길이가 M 이상인 단어만 단어장에 적는다 map 을 이용해 key에 단어, value에 ++1을 해준다. 중복입력되면 value의 값이 증가! 벡터로 단어장을 만들어준 후 map에 있는 단어와 단어가 나온 횟수를 넣어준다. sort 함수를 이용해 조건에 맞게 정렬해줌! ✅ Pass Code #include #include #include #incl..