백준 1835

HR·2022년 4월 29일
0

알고리즘 문제풀이

목록 보기
27/50

백준 1835 : 카드

  1. 한장도 없는 상태에서 과정을 거꾸로 수행한다.
  2. 앞뒤로 넣고 빼야 하므로 덱(deque) 사용

정답 코드

#include <iostream>
#include <algorithm>
#include <deque>

using namespace std;

void print(deque<int> dq) {
	for(int i=0; i<dq.size(); i++) {
		cout<<dq[i]<<' ';
	}
	cout<<'\n';
}

int main() {	
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
	
	int n;
	cin>>n;
	
	deque<int> dq;
	dq.push_back(n);

	for(int i=n-1; i>0; i--) {
		dq.push_front(i);
		for(int j=0; j<i; j++) {
			int temp = dq.back();
			dq.pop_back();
			dq.push_front(temp);
		}
	}
	
	print(dq);
	
    return 0;
}

0개의 댓글