zoukankan      html  css  js  c++  java
  • HDU 1873 看病要排队

    优先队列,水题。

    三个医生。相应三个优先队列就能够了。

    多组数据要初始化优先队列

    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<queue>
    #include<algorithm>
    #include<map>
    #include<stack>
    #include<iostream>
    #include<list>
    #include<set>
    #include<vector>
    #include<cmath>
    
    #define INF 0x7fffffff
    #define eps 1e-8
    #define LL long long
    #define PI 3.141592654
    #define CLR(a,b) memset(a,b,sizeof(a))
    #define FOR(i,a,b) for(int i=a;i<b;i++)
    #define FOR0(i,a,b) for(int i=a;i>=b;i--)
    #define pb push_back
    #define debug puts("==fuck==")
    #define acfun std::ios::sync_with_stdio(false)
    
    #define SIZE 20+10
    using namespace std;
    struct lx
    {
        int value;
        int ID;
        friend bool operator <( lx a,lx b)
        {
            if(a.value==b.value)
                return a.ID>b.ID;
            return a.value<b.value;
        }
    };
    int main()
    {
        int t;
        priority_queue<lx> q[4];
        int Id=1;
        while(scanf("%d",&t)!=EOF)
        {
            char head[11];
            scanf("%s",head);
            if(strcmp(head,"OUT")==0)
            {
                int value;
                scanf("%d",&value);
                if(q[value].empty())
                    puts("EMPTY");
                else
                {
                    lx now;
                    now=q[value].top();
                    q[value].pop();
                    printf("%d
    ",now.ID);
                }
            }
            else if(strcmp(head,"IN")==0)
            {
                int value;
                lx now;
                scanf("%d%d",&value,&now.value);
                now.ID=Id++;
                q[value].push(now);
            }
            t--;
            if(t==0)
            {
                FOR(i,1,4)
                {
                    while(!q[i].empty())
                        q[i].pop();
                }
                Id=1;
            }
        }
    }
    


  • 相关阅读:
    获取浏览器类型和版本
    js 防抖、节流
    判断数据类型
    一个函数判断数据类型
    面试题3道
    如何处理循环的异步操作
    this的原理以及几种使用场景
    v-model原理解析
    小程序setData数据量过大时候会对渲染有影响吗?
    js中in关键字的使用方法
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6978873.html
Copyright © 2011-2022 走看看