2012年10月23日
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1227刚开始理解错题意了呀 开始和结束点可以在路上 并不一定在节点上如果有环 YES如果没有环 任意树中最长路径满足条件 YES否则 NO代码:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<string>#include<vector>#include<map>#include<queue> 阅读全文
posted @ 2012-10-23 20:47 夜-> 阅读(195) 评论(0) 推荐(0)
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1156经典一维背包的原型是二维DP递推 由于其特殊性而被简化成了一维 就变成了背包此题的特殊性导致无法简化成一维背包 所以用二维DP递推思路:先把数据分成m组 每组有两个集合 这两个集合只能任选其一根据每个集合的组数和元素个数进行递推代码及其注释:#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<string>#include&l 阅读全文
posted @ 2012-10-23 20:10 夜-> 阅读(342) 评论(0) 推荐(0)
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1218缩点后形成树 树的根节点 就是有可能获胜的点#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<vector>#include<map>#include<cmath>#include<queue>#include<stack>#include<algorithm>#defi 阅读全文
posted @ 2012-10-23 18:31 夜-> 阅读(261) 评论(0) 推荐(0)
摘要: http://acm.timus.ru/problem.aspx?space=1&num=1124连通分量 Tarjan大体题意:n个箱子 每个里面有m个物品 但对应编号有可能错误 要求把所以物品归位 求最少move一次move 有两种情况 1,把一个物品从一个箱子里拿到里一个箱子了(回来,不会来都可以) 2,空手从一个箱子到另一个箱子思路:首先每个放错的物品都得被移动一次 然后就是从一个连通分量移动到另一个连通分量(空手移动)注意移动到第一个连通分量无需花费时间 而已要注意为0的情况代码:#include<iostream>#include<cstdio>#i 阅读全文
posted @ 2012-10-23 17:10 夜-> 阅读(208) 评论(0) 推荐(0)