12 2017 档案
摘要:n位整数,求删除k位,可以得到的最大值。 n和k都是10^5。 首先可以想到的是从前面开始,如果看到一位比后面的小,那么就要删除。 这样看貌似是O(n)的。 但是有反例:42635 删除2位 那么需要删的是4 和 2 答案是635 所以又想到删k次,每次都从第一位开始找。这样是O(nk)的,显然T了
阅读全文
摘要:n个件物品,有容量为m的背包,每包最多装两件物品,问最少用几个背包? 一种做法是枚举一个,二分另一个。 另一种做法如下。匹配一个最大的,用最小的就可以,这样肯定是最优的。 #include <iostream> #include <cstdio> #include <cstdlib> #includ
阅读全文
摘要:UVA-208 天道好轮回。UVA饶过谁。 就是一个图的DFS。 不过这个图的边太多,要事先判一下起点和终点是否联通(我喜欢用并查集),否则会TLE。 #include <iostream> #include <cstdio> #include <vector> #include <cstring>
阅读全文

浙公网安备 33010602011771号