hdu1509 Windows Message Queue

运算符重载

题目

#include
#include
#include
#include
#include
#include
using namespace std;


struct node{
    string name;
    int par,pri,id;
    friend bool operator< (node a,node b){
        if(a.pri==b.pri)
            return a.id >b.id;
            else return a.pri >b.pri;
    }
};


int main()
{
    priority_queue  que;
    char a[5];
    int i=0;
    while(~scanf("%s",a))
    {
        if(a[0]=='G')
        {
            if(que.empty())
                printf("EMPTY QUEUE!\n");
            else
            {
                node m = que.top();
                //printf("%s %d\n",m.name,m.par);
                cout<>t.name>>t.par>>t.pri;
            t.id=i++;
            que.push(t);
        }
    }


    return 0;
}


你可能感兴趣的:(不会做,优先队列,运算符重载)