题目
https://www.luogu.org/problemnew/show/P1486
题意
写一个工资统计程序,实现对每个员工工资的增加和扣除,对员工的雇佣和解雇,查询工资第k多的人
题解
这是第二次写这个题,第一次在这里不知道该怎么操作,想打标记也不好打,就看了题解,这次再写就会了。增加一个der变量,用来维护所有人工资的变化量,对于A操作,der+=k,对于S操作,der-=k,对于I操作,把员工工资插入splay的时候要减掉der。这样der就是所有员工工资的变化量了。然后就是普通的查询。写的时候我是把第k大的工资转换成了第k2小的工资来查询的,错了一组数据,我对比了下发现有一个查询出错了,不知道为啥,就改成了直接查询第k大的,就过了。
1 |
|