SDUT OJ 数据结构实验之队列一:排队买饭

#include<iostream>
#include<memory.h>
#include<string>
#define N 10010
using namespace std;
int main()
{
	int m,i,a[N],b[N],top,n,y,j;
	string x[N];
	memset(a,0,sizeof(a));
	memset(b,0,sizeof(b));
	cin>>m;
	top=0;
	for(i=1;i<=m;i++)
	{
		cin>>y;
		a[++top]=y;
	}
	cin>>n;
    j=0;
    for(i=1;i<=n;i++)
	{
		cin>>x[i];
		if(x[i]!="LENGTH")
			cin>>b[i];
	}
	for(i=1;i<=n;i++)
	{
		if(x[i]=="JOIN")
		{
			a[++top]=b[i];
		}
		else if(x[i]=="ASK")
		{
			cout<<a[b[i]]<<endl;
		}
		else if(x[i]=="LEAVE")
		{
            for(int k=b[i];k<=top;k++)
			{
				a[k]=a[k+1];
			}
			top--;
		}
		else if(x[i]=="LENGTH")
		{
			cout<<top<<endl;
		}
        else if(x[i]=="FINISH")
		{
			for(int o=1;o<=top-b[i];o++)
				a[o]=a[o+b[i]];
			top=top-b[i];
		}
	}
	return 0;
}
时间: 2024-10-24 09:10:49

SDUT OJ 数据结构实验之队列一:排队买饭的相关文章

数据结构实验之队列一:排队买饭

数据结构实验之队列一:排队买饭 题目描写叙述 中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是非常聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,而且买菜就送豆浆,吸引了不少童鞋.所以有时吧,人还是非常多的,排队是免不了的,悲剧的是超市仅仅有两个收银窗体. 问题是这种:開始有两队人在排队,如今咱们仅仅研究第一队.如今我们给每一个人一个编号,保证编号各不同样,排在前面的人买完饭就走了,有些人挑完饭就排在后面等待付款.还有一些

队列练习--排队买饭

题目描述 中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是很聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,并且买菜就送豆浆,吸引了不少童鞋.所以有时吧,人还是很多的,排队是免不了的,悲剧的是超市只有两个收银窗口. 问题是这样的:开始有两队人在排队,现在咱们只研究第一队,现在我们给每个人一个编号,保证编号各不相同,排在前面的人买完饭就走了,有些人挑完饭就排在后面等待付款,还有一些人比较聪明,看到另一个队人比较少,直接离开这

SDUT OJ 数据结构实验之栈四:括号匹配

#include<iostream> #include<stdio.h> using namespace std; int main() { char a[51],b[51]; int i,top; while(gets(a)!=NULL) { top=-1; for(i=0;a[i]!='\0';i++) { if(a[i]=='{'||a[i]=='['||a[i]=='(') { b[++top]=a[i]; } else if(a[i]=='}') { if(b[top]=

SDUT OJ 数据结构实验之栈二:一般算术表达式转换成后缀式

#include<iostream> using namespace std; int youxian(char s) { if(s=='+'||s=='-') return 1; else if(s=='*'||s=='/') return 2; else if(s=='(') return 3; else if(s==')') return 4; } int main() { int top=0; char s,b[110]; while(cin>>s && s

sdut oj 排队买饭

数据结构实验之队列一:排队买饭 Time Limit: 1000MS Memory limit: 65536K 题目描述 中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是很聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,并且买菜就送豆浆,吸引了不少童鞋.所以有时吧,人还是很多的,排队是免不了的,悲剧的是超市只有两个收银窗口. 问题是这样的:开始有两队人在排队,现在咱们只研究第一队,现在我们给每个人一个编号,保证编号各不相同

桟和队列--排队买饭

数据结构实验之队列一:排队买饭 Time Limit: 1000MS Memory limit: 65536K 题目描述 中午买饭的人特多,食堂真是太拥挤了,买个饭费劲,理工大的小孩还是很聪明的,直接奔政通超市,哈哈,确实,政通超市里面也卖饭,有好几种菜,做的比食堂好吃多了,价格也不比食堂贵,并且买菜就送豆浆,吸引了不少童鞋.所以有时吧,人还是很多的,排队是免不了的,悲剧的是超市只有两个收银窗口. 问题是这样的:开始有两队人在排队,现在咱们只研究第一队,现在我们给每个人一个编号,保证编号各不相同

SDUT 2449 数据结构实验之栈与队列十:走迷宫

数据结构实验之栈与队列十:走迷宫 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 一个由n * m 个格子组成的迷宫,起点是(1, 1), 终点是(n, m),每次可以向上下左右四个方向任意走一步,并且有些格子是不能走动,求从起点到终点经过每个格子至多一次的走法数. Input 第一行一个整数T 表示有T 组测试数据.(T <= 110) 对于每组测试数据: 第一行两个整数n, m,表示迷宫有n * m 个格子.(1

SDUT 3344 数据结构实验之二叉树五:层序遍历

数据结构实验之二叉树五:层序遍历 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description 已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点).请建立二叉树并求二叉树的层次遍历序列. Input 输入数据有多行,第一行是一个整数t (t<1000),代表有t行测试数据.每行是一个长度小于50个字符的字符串. Output 输出二叉树的层次遍历序列. Example I

SDUT 3361 数据结构实验之图论四:迷宫探索

数据结构实验之图论四:迷宫探索 Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Discuss Problem Description 有一个地下迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端点)上都有一盏灯和一个开关:请问如何从某个起点开始在迷宫中点亮所有的灯并回到起点? Input 连续T组数据输入,每组数据第一行给出三个正整数,分别表示地下迷宫的结点数N(1 < N <= 1000).边数M(M <= 30