摘要: 1 /* 2 题意:给定一个连通的无向图G,至少要添加几条边,才能使其变为强连通图(指的是边强联通)。 3 思路:利用tarjan算法找出所有的双联通分量!然后根据low[]值的不同将双联通分量 4 进行缩点,最后图形会变成一棵树!也就是添加至少多少条边使一棵树变成强联通图! ... 阅读全文
posted @ 2014-08-13 11:12 hjzqyx 阅读(850) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题意:N个城市中每两个城市有多条路径连接,可是因为路径存在的天数是有限的!以为某条路经不存在了 3 导致N个城市不能连通了,那么村名们就会抗议!问一共会有多少次抗议! 4 5 思路:最小生成树....我们用最大边来建立树!只要有最大边将节点连接并保证... 阅读全文
posted @ 2014-08-12 09:47 hjzqyx 阅读(379) 评论(0) 推荐(0) 编辑
摘要: /* 思路:多源点,多会点的最短路径! 将最小号-1的节点但最源点,将最大号+1的点当作汇点! 将问题转变成从一个源点到一个汇点的最短路径的问题! 开始忘记初始化vector了,哇了好多次....坑爹啊*/#include#include#include#include#includ... 阅读全文
posted @ 2014-08-11 16:54 hjzqyx 阅读(1638) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 #define M 205 6 #define INF 0x3f3f3f3f 7 using namespace std; 8 9 int map[M][M];10 int d[M], vis[M];11... 阅读全文
posted @ 2014-08-11 14:04 hjzqyx 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 有N个企业,每个企业想要实现通信,要用线路来连接,线路的长度为abs(a-b)%1000; 3 如果企业a 链接到了企业b 那么b就是the center of the serving! 4 然后有两种操作: 5 E a : 输出企业a到serving... 阅读全文
posted @ 2014-08-10 11:14 hjzqyx 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题意:有N个城市, 每一个城市都有一个龙珠(编号与城市的编号相同),有两个操作 3 T A ,B 将标号为A龙珠所在城市的所有的龙珠移动到B龙珠所在城市中! 4 5 思路:并查集 (压缩路径的时候将龙珠移动的次数进行更新) 6 */ 7 #include... 阅读全文
posted @ 2014-08-10 00:24 hjzqyx 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题意:这些信息可能有三种情况,分别是"A > B","A = B","A 17 #include 18 #include 19 #include 20 using namespace std; 21 int f[10005]; 22 int rank[10005]; 2... 阅读全文
posted @ 2014-08-09 20:21 hjzqyx 阅读(285) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 NYOJ 99单词拼接: 3 思路:欧拉回路或者欧拉路的搜索! 4 注意:是有向图的!不要当成无向图,否则在在搜索之前的判断中因为判断有无导致不必要的搜索,以致TLE! 5 有向图的欧拉路:abs(In[i] - Out[i])==1(入度[i] -... 阅读全文
posted @ 2014-08-09 01:28 hjzqyx 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题目大意: 3 就是一幢大厦中有0~99的楼层, 然后有1~5个电梯!每个电梯有一定的上升或下降速度和楼层的停止的位置! 4 问从第0层楼到第k层最少经过多长时间到达! 5 6 思路:明显的Dijkstra ,在建图的时候u->v可能... 阅读全文
posted @ 2014-08-08 19:37 hjzqyx 阅读(365) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 The first line of each test case contains 1 8 #include 9 #include10 #include11 #include12 using namespace std;13 14 double x[800], y[800]... 阅读全文
posted @ 2014-08-08 15:12 hjzqyx 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题目大意: 3 从一个点到达另一个点有多条路径,求这多条路经中最大噪音值的最小值! 、 4 5 思路:最多有100个点,然后又是多次查询,想都不用想,Floyd算法走起! 6 */ 7 #include 8 #include 9 #includ... 阅读全文
posted @ 2014-08-08 00:51 hjzqyx 阅读(437) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 10034 - Freckles 3 克鲁斯克尔最小生成树!~ 4 */ 5 #include 6 #include 7 #include 8 #include 9 using namespace std;10 11 struct node{12 double x, y;13... 阅读全文
posted @ 2014-08-08 00:07 hjzqyx 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 一张有20个顶点的图上。 3 依次输入每个点与哪些点直接相连。 4 并且多次询问两点间,最短需要经过几条路才能从一点到达另一点。 5 6 bfs 水过 7 */ 8 #include 9 #include10 #include11 #include12 #include13 usi... 阅读全文
posted @ 2014-08-07 23:34 hjzqyx 阅读(310) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题意:打印欧拉回路! 3 思路:开始时不明白,dfs为什么是后序遍历? 4 因为欧拉回路本身是一条回路,那么我们在dfs时,可能存在提前找到回路,这条回路可能不是欧拉回路, 5 因为没有遍历完成所有的边!如果写成前序遍历的话,存储起来的路径就不是一条... 阅读全文
posted @ 2014-08-06 18:08 hjzqyx 阅读(411) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题目大意:有N个cows, M个关系 3 a->b 表示 a认为b popular;如果还有b->c, 那么就会有a->c 4 问最终有多少个cows被其他所有cows认为是popular! 5 6 思路:强连通分量中每两个节点都是可达的! 通过分... 阅读全文
posted @ 2014-08-06 17:04 hjzqyx 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题目大意:有两个不同的黑帮,开始的时候不清楚每个人是属于哪个的! 3 执行两个操作 4 A a, b回答a, b两个人是否在同一帮派,或者不确定 5 D a, b表示a, b两个人不在同一个帮派 6 7 思路:利用并查集将相同帮派的人合并到一起! 8 ... 阅读全文
posted @ 2014-08-05 16:26 hjzqyx 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 目大意:输入一个数t,表示测试组数。然后每组第一行两个数字n,m,n表示有n只昆虫,编号从1—n,m表示下面要输入m行交配情况,每行两个整数,表示这两个编号的昆虫为异性,要交配。 3 要求统计交配过程中是否出现冲突,即是否有两个同性的昆虫发生交配。 4 5 思路:并查集 6 ... 阅读全文
posted @ 2014-08-05 12:18 hjzqyx 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 本题属于圆周追击问题: 3 假设已知两个圆周运动的物体的周期分别是a ,b, 设每隔时间t就会在同一条直线上 4 在同一条直线上的条件是 角度之差为 PI ! 5 那么就有方程 (2PI/a - 2PI/b)* t=PI 所以就有 t... 阅读全文
posted @ 2014-08-04 22:48 hjzqyx 阅读(415) 评论(0) 推荐(0) 编辑
摘要: /* class Person{ String name; String sex; boolean flag = true; public void setPerson(String name, String sex){ this.sex=sex; this.na... 阅读全文
posted @ 2014-08-04 00:48 hjzqyx 阅读(423) 评论(0) 推荐(0) 编辑
摘要: 1 /************************************************************************* 2 > File Name: test.cpp 3 > Author: HJZ 4 > Mail: 257023... 阅读全文
posted @ 2014-08-03 17:02 hjzqyx 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 我们枚举每次选择最大数值的情况:m个数, 投掷n次 3 最大值是1: 1种 4 2: 2^n-1 5 3: 3^n-2^n 6 ..... 7 m: m^n... 阅读全文
posted @ 2014-08-02 09:03 hjzqyx 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 题目大意:给你一个序列,不断地将最后边的数值移动到最前边,问最少经过多少次可以变成一个单调递增的序列! 3 如果不能则输出-1。 4 如果该序列按照不断从后向前移动排序成功,那么该序列要么只有一个单调递增的序列, 5 或者有两段单调递增的序列(1..k 和 k+1..n)... 阅读全文
posted @ 2014-08-02 08:37 hjzqyx 阅读(306) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 中国剩余定理可以描述为: 3 若某数x分别被d1、、…、dn除得的余数为r1、r2、…、rn,则可表示为下式: 4 x=R1r1+R2r2+…+Rnrn+RD 5 其中R1是d2、d3、…、dn的公倍数,而且被d1除,余数为1;(称为R1相对于d1的数论倒数) 6 R1 、 7 R2... 阅读全文
posted @ 2014-08-01 22:42 hjzqyx 阅读(367) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 思路: 3 找到单调下降串的起始位置[l, r] 4 如果左边 0...l-1中的最大值 > l...r中的最小值 或者 5 r+1...n中的最小值 8 #include 9 #include10 using namespace std;11 typed... 阅读全文
posted @ 2014-08-01 22:41 hjzqyx 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 原网址:http://blog.csdn.net/wtq493841534/article/details/5452720中国剩余定理中国剩余定理可以描述为:若某数x分别被d1、、…、dn除得的余数为r1、r2、…、rn,则可表示为下式:x=R1r1+R2r2+…+Rnrn+RD其中R1是d2、d3... 阅读全文
posted @ 2014-08-01 19:10 hjzqyx 阅读(6575) 评论(0) 推荐(2) 编辑
摘要: 这题开始的思路就是模拟:就像数组中插点一样,每一个想买票的人都想往前插队!但是这样的话肯定TLE, 看了别人的思路之后才恍然大悟!正解: 将开始的正序插入,变成倒序插入,这样的话,想一想:第 i 个人想要插在 p[i] 的位置上,那么就要保证所插入的位置之前一定要有 p[i]-1个空位!... 阅读全文
posted @ 2014-08-01 15:41 hjzqyx 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 1 /* poj 2187 Beauty Contest 2 凸包:寻找每两点之间距离的最大值 3 这个最大值一定是在凸包的边缘上的! 4 5 求凸包的算法: Andrew算法! 6 */ 7 #include 8 #include 9 #include... 阅读全文
posted @ 2014-07-30 21:52 hjzqyx 阅读(362) 评论(0) 推荐(0) 编辑
摘要: /* 目的:将数据转化成字符串时:用字符串的链接 还是 StringBuilder呢?*/public class Test{ public static void main(String[] args){ int[] arr={1,2,4,5}; System.out.pr... 阅读全文
posted @ 2014-07-30 13:29 hjzqyx 阅读(353) 评论(0) 推荐(0) 编辑
摘要: 1 /* 2 最小生成树 + 几何判断 3 Kruskal 球心之间的距离 - 两个球的半径 6 #include 7 #include 8 #include 9 #include10 using namespace std;11 int f[105];12 struct ba... 阅读全文
posted @ 2014-07-30 10:54 hjzqyx 阅读(381) 评论(0) 推荐(0) 编辑
摘要: /* 目的:自己写一个由于同步嵌套引起的死锁! 思路:多个线程在执行时,某一时刻,0-Thread绑定了LockA锁,1-Thread绑定了LockB锁! 当0-Thread要去绑定LockB锁时 和 1-Thread要去绑定LockA锁时都不能绑定,此时两个线程不能继续进行!*/class Tic... 阅读全文
posted @ 2014-07-30 07:20 hjzqyx 阅读(763) 评论(0) 推荐(0) 编辑