题目链接:http://vjudge.net/problem/viewProblem.action?id=20432
题目大意:朋友的朋友是朋友,求人数最多的那帮家伙有多少人。
我刚开始真尝试了一遍的一步一步用数组模拟搜索,拼接······,果断超时了,下次不干那么无聊的事了,明明有好算法,干嘛还暴力呢?#include
int fa[30001],tot[30001];
int find(int u)
{
fa[u]==u?u:fa[u]=find(fa[u]);
return fa...
分类:
其他好文 时间:
2014-07-29 13:06:37
阅读次数:
227
POJ 2355 Find a multiple(组合数学-抽屉原理)
题目大意:
有n个数,找出一个方案满足:从中选出任意多的数字使得它们的和对n求余为0
解题思路:
用sum[i]记录前 i 项的和。
(1)如果存在某个sum[i]%n==0 ,那么就已经找到了,就是前i项。
(2)如果不存在,则sum[i]%n的取值范围为1~n-1 那么n项sum必然有 sum[i]%n==sum[j]%n,这时候(sum[j]-sum[i])%n=0,也就是 第i+1项到第j项的和对n求余为0,也满足条件了。...
分类:
其他好文 时间:
2014-07-29 12:50:17
阅读次数:
238
鸽笼原理题,以后得好好研究下相关题目。 1 /* 2 ID:esxgx1 3 LANG:C++ 4 PROG:poj2356 5 */ 6 #include 7 #include 8 #include 9 #include 10 using namespace std;11 12 #defin...
分类:
其他好文 时间:
2014-07-29 12:17:26
阅读次数:
214
#hangman.pyfrom PythonCard import model,dialogimport randomdef find_letters(letter,a_string): locations = [] start = 0 while a_string.find(le...
分类:
编程语言 时间:
2014-07-29 11:02:46
阅读次数:
562
在上面一讲是并查集(1)-判断无向图是否存在环. 我们使用了并查集的两个操作:union()和find()// find 的原始实现int find(int parent[], int i){ if (parent[i] == -1) return i; return f...
分类:
其他好文 时间:
2014-07-29 10:57:16
阅读次数:
266
并查集是一种树型的数据结构,用于处理一些不相交集合(Disjoint Sets)的合并及查询问题。常常在使用中以森林来表示。集就是让每个元素构成一个单元素的集合,也就是按一定顺序将属于同一组的元素所在的集合合并。Find:确定元素属于哪一个子集。它可以被用来确定两个元素是否属于同一子集合。Union...
分类:
其他好文 时间:
2014-07-29 10:41:06
阅读次数:
270
一些概念:问题的输入是接收一列整数对,其中每个整数都表示一个某种类型的对象。一对整数pq可以理解为p和q是相连的。假设相连是一种等价关系,等价关系能够将对象分为多个等价类。可以将对象称之为触点将整数对称为 连接,将等价类称为联通分量,或分量。当且仅当两个对象是相连的,他们才属于同一个等价类。问题编译...
分类:
其他好文 时间:
2014-07-29 10:21:28
阅读次数:
253
一、下一个选项卡 //下一个选项卡
$(‘#J_next‘).click(function(e)?{
e.preventDefault();
e.stopPropagation();
var?ul?=?$(‘#B_history‘),
current?=?ul.find(‘.current‘),
li?=?current.next(...
分类:
编程语言 时间:
2014-07-28 17:03:55
阅读次数:
302
孙悟空要寻找七龙珠,这回是七龙珠的增强版了,因为这些龙珠会衍生,最后不止七颗龙珠了。
悟空带着布玛的龙珠雷达探测器出发了,却发现布玛的龙珠雷达探测器的程序太垃圾了,所以找到我们这些ACM高手为龙珠雷达探测器写个程序,要求可以显示某颗龙珠所在的城市的位置,该龙珠所在的城市共有多少颗龙珠,龙珠移动过的次数。
布玛是个有钱人啊,写个程序我要价5百万,不算过分吧。因为本程序需要用到Union Find...
分类:
其他好文 时间:
2014-07-28 16:34:33
阅读次数:
350
第一道Kruskal算法题#include #include #include using namespace std;#define max 505int f[max],maxw;struct edge{ int st,en,w;}ed[max*max/2];int find(int k){ if...
分类:
其他好文 时间:
2014-07-28 15:39:43
阅读次数:
181