「JSOI2011」任务调度

2021-04-22 01:27

阅读:273

标签:char   mes   text   online   getc   http   pre   开始   合并   

「JSOI2011」任务调度

传送门
一开始还在想写平衡树,看到 \(\text{TRANS}\) 操作后就晓得要用可并堆了。
这题好像就是个可并堆的板子题???

  • ADD 直接往对应的对里面加元素
  • DEC 在对应的堆里面找到这个元素,讨论一下它是不是根节点,然后抠出来重新加进去
  • TRANS 合并两个堆
  • MIN 查堆顶的值
  • WORK 讨论一下根节点和它儿子的大小关系来判 ERROR 的情况,然后就和 DEC 一样了

参考代码:

#include 
#include 
#define rg register
#define file(x) freopen(x".in", "r", stdin), freopen(x".out", "w", stdout)
using namespace std;
template  inline void read(T& s) {
    s = 0; int f = 0; char c = getchar();
    while ('0' > c || c > '9') f |= c == '-', c = getchar();
    while ('0'  val[y]) swap(x, y);
    ch[1][x] = merge(ch[1][x], y);
    if (dis[ch[0][x]] 

「JSOI2011」任务调度

标签:char   mes   text   online   getc   http   pre   开始   合并   

原文地址:https://www.cnblogs.com/zsbzsb/p/12246361.html


评论


亲,登录后才可以留言!