알고리즘 & 자료구조/백준
[C/알고리즘] 백준 15828 (라우터)
11월1일
2021. 7. 8. 23:50
https://www.acmicpc.net/problem/15828
15828번: Router
인터넷을 사용하기 위해서는 컴퓨터에 인터넷 회선을 연결하거나 Wi-Fi를 연결해야 한다. 이렇게 연결된 네트워크를 통해 컴퓨터에는 통신이 가능하다. 마음에 드는 노래나 동영상이 있는 곳에
www.acmicpc.net
#include <cstdio>
#include <queue>
using namespace std;
// 라우터
int main()
{
queue<int> q;
int n;
scanf("%d", &n);
int packet = 0;
int packet_size = 0;
while (packet != -1)
{
scanf("%d", &packet);
if (packet == 0)
{
q.pop();
packet_size = q.size();
}
else if (packet == -1)
{
break;
}
else
{
if (q.size() < n)
{
q.push(packet);
packet_size += 1;
}
}
}
if (packet_size == 0)
{
printf("empty");
return;
}
for (int i = 0; i < packet_size; ++i)
{
printf("%d\n", q.front());
q.pop();
}
}
..원래 C++로 풀었는데 똑같은 코드임에도 C++로 제출할 때는 시간초과가 뜨는데 C로 제출하니 100점이라고 떴다.
이전에 개행이나 print같은 부분에서 C가 훨씬 빨라서 C++과 제출 시간의 차이가 있었는데 얘도 마찬가지여서 그랬나.
테스트 케이스가 너무 궁금하다.