Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- cos pro 1급
- 동적계획법과최단거리역추적
- 백준
- cos pro
- 동적계획법
- 코드품앗이
- cos
- Vue
- 파이썬
- 안드로이드스튜디오
- Flutter
- 개발
- codingtest
- BAEKJOON
- android
- Algorithm
- 안드로이드
- 분할정복
- issue
- 알고리즘
- django
- 코테
- Python
- C++
- DFS와BFS
- 코딩테스트
- DART
- AndroidStudio
- DFS
- vuejs
Archives
- Today
- Total
Development Artist
[Baekjoon, C++] 2164번 : 카드2 본문
728x90
반응형
백준 단계별 풀기에서 큐,덱 두 번째 문제이다.
링크는 아래와 같다.
2164번: 카드2
N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가
www.acmicpc.net
1. for문으로 i=1부터 해서 N까지 숫자들을 queue에 push한다.
2. 하나가 남을때 까지 = queue의 사이즈가 1이 될 때 까지. 따라서 while문으로 하고 조건은 queue.size() > 1로 한다.
#include<iostream>
#include<queue>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int numberOfCard;
int lastOfCard = 0;
queue<int> que;
cin >> numberOfCard;
for (int i = 1; i <= numberOfCard; i++) {
que.push(i);
}
while (que.size() > 1) {
que.pop();
if (que.size() == 1) {
lastOfCard = que.front();
break;
}
int topOfCard;
topOfCard = que.front();
que.push(topOfCard);
que.pop();
}
cout << lastOfCard;
return 0;
}
하지만 결과는...
근데 생각해보면, 따로 변수를 둬서 그것들을 저장하는 것이 아니라, que.front()를 이용해서 바로 넣어주면 코드가 더 간단해 진다. 오버플로우가 날 경우, 틀렸습니다도 출력한다는 것을 보았었는데, 그 문제가 아닐까 짐작해본다.
#include<iostream>
#include<queue>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int numberOfCard;
queue<int> que;
cin >> numberOfCard;
for (int i = 1; i <= numberOfCard; i++) {
que.push(i);
}
while (que.size() > 1) {
que.pop();
que.push(que.front());
que.pop();
}
cout << que.front();
return 0;
}
이상으로 2164번 이였다.
728x90
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[Baekjoon, C++] 1966번 : 프린터 큐 (0) | 2021.01.15 |
---|---|
[Baekjoon, C++] 11866번 : 요세푸스 문제 0 (0) | 2021.01.14 |
[Beakjoon, C++] 18258번 : 큐2 (0) | 2021.01.12 |
[Beakjoon, C++] 17298번 : 오큰수 (0) | 2021.01.10 |
[Baekjoon, C++] 1874번 : 스택 수열 (0) | 2021.01.09 |
Comments