标签:反思 队列 大小 原因 ref 保存 问题 长度 最大的
神刀手有很多蚯蚓,每次把最长的一条切成?$px$?和$x$-?$px$?两段。(显然p值大小是固定的,$x>=0$,所以这两段的大小关系不变)
要问的是
我们用3个队列来保存数据,
q1存储剩下所有的没被切过的蚯蚓,
q2存储切出的所有?$px$?
q3存储切出的所有$x$-?$px$?
由于蚯蚓是不会越长越长的,所以每次刚切完的蚯蚓和之前切的蚯蚓相比较,?$px$?一定比之前所有的?$px$?要小,$x$-?$px$?一定比之前所有的$x$-?$px$?要小。
只要在第一次操作前排好序,每个队列中的蚯蚓就是按长度从大到小的。
对于第一个问题,每次只需比较每个队列中队首的蚯蚓,选出最大的弹出,切割后再放进各自的队列
对于第二个问题,每次比较每个队列中队首的蚯蚓,选出最大的弹出。
时间复杂度$O(nlogn+m+n)$ 可行
(我对我算的时间复杂度表示怀疑,有问题的话dalao可以拼命吐槽)
我觉得ta写的比较简洁易懂
——$cz$
标签:反思 队列 大小 原因 ref 保存 问题 长度 最大的
原文地址:https://www.cnblogs.com/zdsrs060330/p/13095089.html