Problem Solving/백준 33

[백준/c++] 2164 - 카드2

https://www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 1) 풀이 이 문제는 고민할 필요도 없이 그냥 코드를 적어내려갔고, 내 예상대로 한 번에 정답을 맞혔다 😁 1) 카드를 빼는 경우는 맨앞에서만 일어나고, 카드를 추가하는 경우는 맨 뒤에서만 일어나기 때문에 큐를 이용하여 푼다. 2) 1부터 n까지의 카드를 큐에 넣어준다 3) 한장 남을 때까지 pop과 push를 반복한다. 3) 반복이 끝날 때, 카드는 한장밖에 없으므로 제일 앞의 요소를 출력한다...

[백준/c++] 1021 - 회전하는 큐

https://www.acmicpc.net/problem/1021 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net 1) 풀이 문제에서 '위치'라는 말이 문제를 조금 헷갈리게 한다고 생각하는데, 이 위치를 인덱스라고 생각하지 말고, 1~n까지 덱에 삽입하고 이 삽입된 값들을 '위치'라고 생각하고 옮기면 되는 문제이다. 즉, 정리해보자면 '뽑고자 하는 수(위치)를 최소 연산(오른쪽/왼쪽으로 옮기기)으로 제일 앞으로 옮기고 pop_front 를 해라' 해당 문제에서 고려할 사항과 풀이 순서는 다음과 같다. 제일..

[백준/c++] 1874 - 스택 수열

오늘부터 블로그에 문제 풀이를 적기로 했다! 😊 요즘 예전에 풀었던 문제를 다시 풀고 있어서 현재 코드 / 예전 코드 를 비교해볼 때가 많은데, 도무지 어떤 방식으로 푼 건지 머리로 이해할 수 없어서 과정을 기록해보려고 한다. 미숙하지만 이것도 연습하다 보면 익숙해지겠지. 아무튼, 풀어보겠다! https://www.acmicpc.net/problem/1874 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 1) 풀이 이 문제를 ..

728x90