Uva
拔光祖国小草
存放一下做的题。
展开
-
UVA11732(左兄弟右儿子的Trie/Trie)
裸Trie也能过,卡一下内存 #include <iostream> #include <algorithm> #include <queue> #include <stack> #include <cstdio> #include <string> #include <cstring> #include &原创 2018-03-14 20:09:36 · 241 阅读 · 0 评论 -
UVA1153 (贪心+优先队列)
给出n个任务的执行时间qiqiq_i,截止时间didid_i,在互不交叉的情况下最多能完成几个任务 题解:想复杂了,题目中暗示按d排序,优先队列每次抛出完成时间最长的就可以了 (我当时想着万一抛出两个怎么办,后来想如果队列中较大的q都可以放进去,并且现在的q还小,那么此时的q一定只会使队列中抛出一个就可以放进去了,太弱智了自己) #include <cstdio> #includ...原创 2018-03-26 11:33:31 · 461 阅读 · 0 评论 -
UVA1151 (MST + 剪枝)
主要是剪枝不好想吧 先跑一遍原图的MST,那么二进制枚举所有的套餐,相当于加进去一些长度为0的边,那么之前原图跑出选中的边就相当于往后挪了,(克鲁斯卡尔按边权值排序)那么再选n-1条边的时候一定不会选到之前没选到的边(大大剪枝了)那么久一定是在原图MST中的n-1条边选(再怎么样选这n-1条边也能得出一个MST) #include <iostream> #include &...原创 2018-03-26 21:15:45 · 478 阅读 · 0 评论 -
UVA 11261(递推+找规律)
题意:一个n*n的棋盘中放置m个点,每个点会占用所在的两条斜对角线,问最后有多少个格子没有被占用 题解:按从左上往右下(id = n+x-y)对角线pos, 从右上往左下(id = x+y-1) 对角线neg分成两部分,dp[i]表示第i条neg对角线没有被占用的格子数,然后根据pos找规律递推neg没有被占用的格子,最后判断neg上有没有被占用进行累加 #include <iost...原创 2018-03-28 22:47:38 · 235 阅读 · 0 评论