随笔分类 -  UVA

摘要:题目链接:https://vjudge.net/problem/UVA-11324 题目大意:给定一张有向图G,求一个结点数最大的结点集,集合中每两个点都至少有一条路径相连(方向任意)。 题解: 易知如果一个点被选择,则它所在强连通分量中的其他点也一定要选,如果不选,则其他点也不可选,因此先求出强连 阅读全文
posted @ 2017-04-15 22:17 Robin! 阅读(237) 评论(0) 推荐(0)
摘要:题目链接:https://vjudge.net/problem/UVA-10765 题目大意:一个无向图中,求去掉每个点后的连通分量的数量。 题解: 这题实际上是求割顶,记录一下割顶的子孙当中反向边不在它之上的连通分量数量,最后加上图初始的连通分量数量。 代码: 阅读全文
posted @ 2017-04-15 20:45 Robin! 阅读(263) 评论(0) 推荐(0)
摘要:Description Japan plans to welcome the ACM ICPC World Finals and a lot of roads must be built for the venue. Japan is tall island with N cities on the 阅读全文
posted @ 2017-03-09 18:13 Robin! 阅读(157) 评论(0) 推荐(0)
摘要:思路: 求出每个状态i(已杀死机器人集合)能杀死的机器人数kill[i],即已死机器人的武器加上初始武器又能杀死的机器人的集合; 每个状态i都只能往包含在kill[i]中,且不包含在s中的机器人j扩展,即i -> i|(1 << j); dp[i]代表到达该状态的顺序总数,i等于所有前一个合法状态的 阅读全文
posted @ 2017-02-14 23:24 Robin! 阅读(303) 评论(0) 推荐(0)
摘要:思路: 正反各求出每个数作为结尾数字的LIS,然后找出最长的Wavio Sequence,用O(n2)试了一次TLE,所以只能用O(nlogn)的算法。 Code: 阅读全文
posted @ 2017-02-13 21:24 Robin! 阅读(193) 评论(0) 推荐(0)
摘要:题目链接:https://vjudge.net/problem/UVA-1220 思路: 树形DP模板题,求最大人数很简单,难点在于如何判断最大人数的名单是否有不同的情况; 解决方法是用一个数组f[manx][2]记录该节点是否出场的情况,为真时代表有多种情况; 具体讨论: Code: 阅读全文
posted @ 2017-02-06 22:58 Robin! 阅读(216) 评论(0) 推荐(0)
摘要:题目链接:https://vjudge.net/problem/UVA-10003 思路: 石子合并问题的逆过程,做法一模一样; Code: 阅读全文
posted @ 2017-02-06 16:11 Robin! 阅读(132) 评论(0) 推荐(0)
摘要:## 这是一道简单的深度优先搜索问题## 附上题目链接:https://vjudge.net/problem/UVA-639 这道题跟八皇后问题类似,思路大致为:把棋盘的每一格视作一个状态,符合要求就摆放,不符合就进入下一状态,到达最后一格就开始回溯,直至走完每一个状态,由于是每一次都走到最后一格, 阅读全文
posted @ 2016-12-16 19:18 Robin! 阅读(139) 评论(0) 推荐(0)
摘要:一道关于栈的问题: 题目链接如下:http://vjudge.net/problem/UVA-673; 根据模型很容易想到用栈实现,下面贴出代码: 1 #include<cstdio> 2 #include<iostream> 3 #include<algorithm> 4 #include<cma 阅读全文
posted @ 2016-11-22 18:50 Robin! 阅读(115) 评论(0) 推荐(0)