jons-mark 2015-07-22 13:06 采纳率: 14.3%
浏览 1496

HDU 1509 Windows Message Queue

自己测试总刚觉没错,求高手帮忙,不知道哪错了,总wa。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 写回答

3条回答 默认 最新

  • jons-mark 2015-07-22 13:06
    关注

    import java.util.Comparator;
    import java.util.PriorityQueue;
    import java.util.Scanner;

    class Nod {

    String name;
    int val, pri;
    
    public Nod(String name, int val, int pri) {
        this.name = name;
        this.val = val;
        this.pri = pri;
    }
    
    public String getName() {
        return name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public int getVal() {
        return val;
    }
    
    public void setVal(int val) {
        this.val = val;
    }
    
    public int getPri() {
        return pri;
    }
    
    public void setPri(int pri) {
        this.pri = pri;
    }
    

    }

    public class Main4 {

    public static void main(String[] args) {
        Comparator<Nod> con = new Comparator<Nod>() {
            @Override
            public int compare(Nod a, Nod b) {
                int n1 = a.getPri();
                int n2 = b.getPri();
                int m1 = a.getVal();
                int m2 = b.getVal();
                if (n1 > n2) {
                    return 1;
                } else if (n1 < n2) {
                    return -1;
                } else {
                    return 0;
                }
            }
        };
        PriorityQueue<Nod> q = new PriorityQueue<Nod>(con);
        Scanner sc = new Scanner(System.in);
        while (sc.hasNext()) {
            String str = sc.next();
            if (str.equals("GET")) {
                if (q.isEmpty()) {
                    System.out.println("EMPTY QUEUE!");
                } else {
                    Nod n;
                    n = q.poll();
                    System.out.println(n.getName() + " " + n.getVal());
                }
            } else {
                String name = sc.next();
                int v = sc.nextInt();
                int p = sc.nextInt();
                Nod n = new Nod(name, v, p);
                q.add(n);
            }
        }
    }
    

    }

    
    
    评论

报告相同问题?

悬赏问题

  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障