概述
#include <stdio.h>
#include <string.h>
int a[1005][1005];
int p[1005][2];
int add[1000005];
struct link{
//int queue;
int sum;
int next;
}link[1005]={0};
int head,rear;
int num=1;
int main()
{
int key;
head=-1;
int n,m,k;
char s[100];
while(1)
{
scanf("%d",&n);
if(n==0)
break;
printf("Scenario #%dn",num++);
int i,j;
for(i=1;i<=n;i++)
{
scanf("%d",&m);
for(j=1;j<=m;j++)
{
scanf("%d",&k);
add[k]=i;
}
}
while(1)
{
scanf("%s",s);
if(strcmp(s,"ENQUEUE")==0)
{
scanf("%d",&k);
key=add[k];
if(p[key][0]==p[key][1])
{
a[key][++p[key][1]]=k;
if(head==-1)
{
head=key;
link[key].next=-1;
link[key].sum++;
rear=key;
}
else
{
link[rear].next=key;
link[key].next=-1;
link[key].sum++;
rear=key;
}
}
else
{
a[key][++p[key][1]]=k;
link[key].sum++;
}
}
else if(strcmp(s,"DEQUEUE")==0)
{
key=head;
link[head].sum--;
if(link[head].sum==0)
head=link[head].next;
printf("%dn",a[key][++p[key][0]]);
}
else if(strcmp(s,"STOP")==0)
break;
}
}
return 0;
}
最后
以上就是沉静发夹为你收集整理的UVA540 团体队列 Team Queue的全部内容,希望文章能够帮你解决UVA540 团体队列 Team Queue所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复