T1:数组
显然每一个数是独立的。spa
无解状况的断定用裴蜀定理便可 gc
用$ex_gcd$求出一组特解,对于每一个数,只须要求出使$|x|+|y|$最小的一组解便可。时间
最优解必定取在$x$或$y$接近$0$时,取个$min$即为答案。枚举
时间复杂度$O(n)$。gcd
T2:
根据贪心思想。
考虑两个数对$(a_i,b_i)$和$(a_j,b_j)$,若是$a_i<b_j$而且$b_i<a_j$,那么咱们但愿$i$排在$j$前面。对于相反的状况,咱们但愿$j$排在$i$前面。其他两种状况$i$和$j$以任意顺序排列都是相同的。显然按$a+b$从小到大排列就能够知足全部的需求。
设DP状态为选择的$a_i$的最大值为$j$时的最优值,更新时只涉及单点插入和区间加,用线段树维护DP数组便可。
时间复杂度$O(nlogn)$。
T3:
跑多元最短路,并记录由哪一个源点更新。
枚举每条边,若是两侧的前驱不一样,则用这条路径更新两个前驱的答案。
时间复杂度$O(mlogn)$。