题解:AT_arc226_d [ARC226D] Penta-Queue
好题!
首先,我们要做的是让五个队列都升序,否则一直 pop 就倒闭了。
那考虑维持升序能干啥,队列是比较少的,所以不难想到归并排序,想想怎么归并两个升序队列到一个。
假设要把队列
设
回到题目,每次往队列
归并到哪个队列呢?因为 push 比较多,所以需要归并到
一个想法是,归并到队列
你发现这样每对相邻队列的归并总复杂度是一致的,每往后一层规模大
代码太好写了不放。
好题!
首先,我们要做的是让五个队列都升序,否则一直 pop 就倒闭了。
那考虑维持升序能干啥,队列是比较少的,所以不难想到归并排序,想想怎么归并两个升序队列到一个。
假设要把队列
设
回到题目,每次往队列
归并到哪个队列呢?因为 push 比较多,所以需要归并到
一个想法是,归并到队列
你发现这样每对相邻队列的归并总复杂度是一致的,每往后一层规模大
代码太好写了不放。