首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

uva11995-水题(锻炼指南)

2013-03-12 
uva11995--水题(训练指南)#includecstdlib#includeiostream#includecstdio#includecmath#include

uva11995--水题(训练指南)

#include<cstdlib>#include<iostream>#include<cstdio>#include<cmath>#include<cstring>#include<algorithm>#include<set>#include<map>#include<list>#include<stack>#include<queue>#include<vector>#define LL long long#define inf 0x7fffffff#define exp 1e-9#define M 100#define N 105using namespace std;int m,n,t;int main(){#ifndef ONLINE_JUDGE    freopen("ex.in","r",stdin);#endif    while(scanf("%d",&n)==1)    {        int qa=1,pqa=1,sa=1;        queue<int> q;        priority_queue<int> pq;        stack<int> s;        for (int i=0; i<n; ++i )        {            int x;            scanf("%d",&x);            if(x==1)            {                scanf("%d",&x);                q.push(x);                pq.push(x);                s.push(x);            }            else            {                scanf("%d",&x);                int t;                if(q.empty())                {                    qa=pqa=sa=0;                    continue;//wa                }                t=q.front();                q.pop();                if(t!=x)                    qa=0;                t=pq.top();                pq.pop();                if(t!=x)                    pqa=0;                t=s.top();                s.pop();                if(t!=x)                    sa=0;            }        }        int ans=qa+pqa+sa;        if(ans>=2)            printf("not sure\n");        else if(ans==0)            printf("impossible\n");        else if(qa)            printf("queue\n");        else if(pqa)            printf("priority queue\n");        else            printf("stack\n");    }    return 0;}


热点排行