首先每个洞至少造成 3 点伤害,并且73点生命值会饿死,77点生命值会饿死,那么答案一定在73-77之间,并且是 3 的倍数,只有 75 满足条件
拓扑排序,首先使用map或者直接sort对软件名进行排序,按照从小到大的顺序编号,然后使用优先队列,每次取出编号小的即可
树形dp,从叶子节点开始,暴力枚举叶子节点对父节点的所有可行情况,枚举完就更新父节点,复杂度 
按题意模拟,注意 (PS:阿姨在没有取得被子之前上楼不消耗体力。),所以阿姨是一定能取走所有被子的
G、校车
校车上最大人数是任何时刻在车上的人数的最大值,所以先将站点离散化,然后求一个最大前缀和即可。
求 ,其中  是  的所有因子的中位数
可以发现,对于一个数字  ,小于等于  的因子数量一定等于 大于等于 
所以我们只要求出了小于等于  的最大因子,那么大于等于  的最小的因子也得到了(直接相除)
所以我们考虑埃氏筛法,在每次标记合数的时候,记录  的小于等于  的最大因子即可
最后跑一个前缀和即可

代码: