본문 바로가기

코딩 테스트

백준 2164

deque 를 사용해서 비교적 쉽게 풀었다.

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

using namespace std;


int main(void)
{
	ios::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);

	deque<int> cards;

	int input = 0;
	cin >> input;

	bool erase = true;

	for (int i = 1; i <= input; ++i)
	{
		cards.push_back(i);
	}
	while (cards.size() != 1)
	{
		if (erase)
		{
			cards.pop_front();			
			erase = false;
		}
		else
		{
			int temp = cards.front();
			cards.pop_front();
			cards.push_back(temp);
			erase = true;
		}
	}

	cout << cards[0];


	return 0;
}

'코딩 테스트' 카테고리의 다른 글

백준 10871  (0) 2023.06.29
백준 11050(r)  (0) 2023.06.27
백준 10951  (0) 2023.06.26
백준 1152  (0) 2023.06.24
백준 10814  (0) 2023.06.23