⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1509 windows message queue.cpp

📁 威士忌的HDU题解.大概有260多题的源码。对于学习非常有好处。
💻 CPP
字号:
/*
1509 Windows Message Queue
Time Limit : 1000 ms  Memory Limit : 32768 K  Output Limit : 500 K

GUN C++
*/
#include <iostream>
#include <queue>
#include <cstdio>
using namespace std;

struct Msg
{
    char name[100];
    int para;
    int priority;
    int index;
    
    bool operator < (const Msg &temp) const
    {
        if(priority>temp.priority)
            return true;
        else
            if(priority==temp.priority)
                return index>temp.index;
            else
                return false;
    }
};
priority_queue<Msg> SQ;

int main()
{
    int t,n,i,prior;
    char cmd[5];
    Msg temp;

    i=0;
    while(scanf("%s",cmd)==1)
    {
        if(cmd[0]=='G')
        {
            if(SQ.empty())
                printf("EMPTY QUEUE!\n");
            else
            {
                temp=SQ.top();
                printf("%s %d\n",temp.name,temp.para);
                SQ.pop();
            }
        }
        else
        {
            scanf("%s %d %d",temp.name,&temp.para,&temp.priority);
            temp.index=++i;
            SQ.push(temp);
        }
    }
    return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -