끄적끄적 코딩
article thumbnail
Published 2019. 9. 7. 23:33
[C++] 백준 10845번 큐 알고리즘
728x90

큐 문제입니다.

다음을 실행했을 때에 대한 결과값을 출력합니다.
push
pop
size
empty
front
back

 

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <queue>
using namespace std;

queue<int> q;

void push(int x)
{
	q.push(x);
}

int pop()
{
	if (q.empty()) {
		return -1;
	}
	int x = q.front();
	q.pop();
	return x;
}

int size()
{
	return q.size();
}

int empty()
{
	if (q.empty()) {
		return 1;
	}
	else {
		return 0;
	}
}

int front()
{
	if (q.empty()) {
		return -1;
	}
	else {
		return q.front();
	}
}

int back()
{
	if (q.empty()) {
		return -1;
	}
	else {
		return q.back();
	}
}

int main(int argc, char *argv[])
{
	int n;
	int num;
	string s;

	cin >> n;

	while (n--) {
		cin >> s;

		if (s == "push") {
			cin >> num;
			push(num);
		}
		else if (s == "pop") {
			cout << pop() << endl;
		}
		else if (s == "size") {
			cout << size() << endl;
		}
		else if (s == "empty") {
			cout << empty() << endl;
		}
		else if (s == "front") {
			cout << front() << endl;
		}
		else if (s == "back") {
			cout << back() << endl;
		}
	}

	return 0;
}

검색 태그