- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 反思
单纯从刷题方面来说,最近感觉到自己有些地方存在误区如果不具备一定必须的知识,那就谈不上思考题目。所以在平时刷题的过程中, 不花太多的时间在自己想那些知识欠缺的题目上。但是这些题目具有很高的价值——因为它会使你学到新东西。所以认真学习别人的方法,拜读别人的优秀程序,是一个让自己身心愉悦的过程。既可以学习新的知识,也不会因为刷不了题目而失落。当对于某一块具备了一定量的知识,那面对很对题目的时候
2015-03-25 16:33:47 487
原创 uva 10457 - Magic Car ( 最小瓶颈树 的应用)
题意:m条路,每条路上必须维持速度v,现在有一辆车,启动能量和结束能量为a, b,途中消耗能量为经过路径最大速度减去最小速度,现在每次循环给定起点终点,问最小能量花费其实题意并没有这么直白,但是经过转化,可以得到图中消耗的能量就是路径中经过的最大速度减去最小速度。解题思路:给定起点和终点,可以很容易求得 连通起点和终点时 速度最大的边(用最小瓶颈路的思路)。至于路径中速度最小的边,
2015-03-25 16:10:18 652
原创 uva 10765 Doves and bombs(双联通分量)
题意:我读了一遍题,没读懂 给一个n个点联通的无向图,要求的是去掉图中的某个点后,所形成的连通块的个数。按形成的连通块的个数的从多到少 和 点的编号从大到小 输出前m个结果。解题思路:说到解题方法,就要说一下求双连通分量这个事。我原来理解双连通分量,以为其形式必然会是 几个点围成一个环才能叫一个双连通分量。其实不然。 定义:在无向连通图中,如果删除该图的任何一
2015-03-24 20:27:39 645
原创 uva 10246 Asterix and Obelix(最短路问题拓展 dijkstra)
题意:给定一个图,每个点都有一个代价,每个边也都有一个代价,现在给定两个点,让求从一个点到另一个点的最小代价。 最小代价 = 经过的边的代价和 + 经过的最大代价的哪一个点的代价解题思路:一共只有80个点 所以可以枚举每一个点,然后把当前点的代价作为最小代价,代价高于这个点的点就不走(即该条边再找最短路的过程中不使用),然后把这个点作为起点,dijkstra求该点到其他点的最短路。
2015-03-24 16:20:05 744
原创 uva 10740 Not the Best 两点之间的K短路径
题意:给一张图,求解两点之间的K短路径 如果不存在,输出-1解题思路:不会。。。。套模板:A*+SPFAcode:#include#include#include#include#includeusing namespace std;//int n,m;const int N = 105, M=1005;const int INF = 0x3f3f3f3f;
2015-03-23 11:25:34 720
原创 uva 10342 Always Late (两点之间次短路)
题意:求两点之间的次短路解题思路:在利用dijkstra的过程中,保存下起点到每一点的 最短距离 和 次短距离 两个状态,需要注意的是从自己到自己的状态,并不是0,而是与该点相连的所有点中,距离最小的那个的来回趟儿,即乘以二。先打表,再查询code:#include#include#include#include#includeusing namespace st
2015-03-23 11:12:52 548
原创 uva 10816 Travel in Desert(简单的好题~两种方法)
题意:给出 一个图点与点之间的路径上有两个权值 路径长度和温度要求在所走路径中的温度的最大值最小的前提下 走最短路径解题思路1:首先用 最小生成树 的方法走出 最小瓶颈路 ,把在这期间用到的所有温度小于 路径上最大温度 的边存下来,作为接下来求最短路径的图;在新生成的图中求最短路径即可;code#include#include#include#include
2015-03-19 16:12:23 898
原创 1451 - Average 快速求平均值
如何快速求取一段区间的平均值 用前缀的思想来看 非常简单但是 本题题意要求的是 大于等于一段长度的区间的平均值的最大值 而且给出的数据范围很大 O(n*L)的直白比较算法 用于解决此问题不合适这种情况下 可以考虑用斜率来表示平均值 然后通过对斜率的讨论和比较斜率来找出最大平均值我感觉是维护一个从当前点往前的最大斜率——去除上凸点(它和当前点的连线肯定不能是最大斜率)code#i
2015-03-18 16:03:50 945
原创 codeforces #296 div2 (527C) STL中set的运用
题意:在一块H*M的玻璃上每次划一刀(只能水平或竖直),输出每次划开之后剩下的玻璃中面积最大的一块的面积;做题的时候,认为这么大的数据量,有每次查询输出,应该是数据结构的内容。这道题可以用STL中的set容器来很好地解决~set容器其本身就是用红黑树这种数据结构来实现的,所以和原来的猜测并不相悖。STL平时用的并不多,里面的一些函数很生疏,熟悉一下解题思路:首先建立两个se
2015-03-18 13:58:45 774
原创 UVA 1108 - Mining Your Own Business
刘汝佳书上都给出了完整的代码在这里理一下思路:由题意知肯定存在一个或者多个双连通分量;如果某一个双连通分量有割顶,那太平井一定不能打在割顶上。而是选择割顶之外的任意一个点;如果没有割顶,则要在该双连通分量上打两个井至于打井方案,见代码#include #include #include #include #include usi
2015-03-14 15:09:50 677
原创 二分图判定 (黑白二着色法)
bool bipartite(int u) { for (int i = 0; i < g[u].size(); i++) { int v = g[u][i]; if (color[v] == color[u]) return false; if (!color[v]) { color[v] = 3 - color[u
2015-03-14 14:49:46 2065
原创 连通分量 无向图的割顶和桥 无向图的双连通分量 有向图的强连通分量
时间戳 dfs_clock :说白了就是记录下访问每个结点的次序。假设我们用 pre 保存,那么如果 pre[u] > pre[v], 那么就可以知道先访问的 v ,后访问的 u 。现在给定一条边, (u, v), 且 u 的祖先为 fa, 如果有 pre[v] 1 求连通分量:相互可达的节点称为一个连通分量;#include #include #i
2015-03-14 14:44:12 790
原创 UVA 1364 - Knights of the Round Table (找双连通分量 + 二分图染色法判断)
亚瑟王要在圆桌上召开骑士会议,为了不引发骑士之间的冲突, 并且能够让会议的议题有令人满意的结果,每次开会前都必须对出席会议的骑士有如下要求: 1、 相互憎恨的两个骑士不能坐在直接相邻的2个位置; 2、 出席会议的骑士数必须是奇数,这是为了让投票表决议题时都能有结果。
2015-03-14 11:33:22 827
原创 UVA 810 - A Dicey Problem
这道题目题意理解起来好难....以至于不想做抄题意:!将筛子某在某一个初始位置, 知道他的初始状态(由顶部点数 和 最前面的点数来确定)来往四个方向进行翻转。 可以翻转的条件:当且仅当现在的顶部的点数与下一个位置的点数相同。如果可以翻转回来。 输出路径。难点在于,how to know the die just rely on the front and top s
2015-03-13 17:47:01 768
原创 UVA 707 - Robbery
搜啊搜~~~~~~~1.用记忆化搜索 来搜答案,否则搜不完~2.题目理解起来有困难....sad讲:如果最后没有找到任何时间任何地点可能有贼,说明他跑掉了 除了上面这种情况,如果在所有时间里都同时存在多于一个点可能有贼,则Nothing known除了上面两种情况,输出能确定贼的时间和该时间贼的地点#include#include#include#incl
2015-03-13 17:12:09 584
原创 UVa 515 - King (差分约束系统 + SPFA求带负权最短路)
下面是差分约束系统的详细介绍,以及解决方法~ 摘抄自 xuezhongfenfei(他好像也是转的....)差分约束系统X1 - X2 X1 - X5 X2 - X5 X3 - X1 X4 - X1 X4 - X3 X5 - X3 X5 - X4 不等式组(1) 全都是两个未知数的差小于等于某个常数(大于等于也可以,因为左右乘以
2015-03-12 20:56:11 638
原创 SPFA 求带负权的单源最短路
int spfa_bfs(int s){ ///s表示起点; queue q; memset(d,0x3f,sizeof(d)); ///d数组中存下的就是最短路径(存在的话) d[s] = 0; memset(c,0,sizeof(c));///c数组表示的是某一个节点的入队次数 memset(vis,0,sizeof(vis));///一如既
2015-03-12 20:48:50 1010
转载 趣写算法系列之--匈牙利算法
原网址:http://blog.csdn.net/dark_scope/article/details/8880547
2015-03-10 16:37:08 536
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人