导航

上一页 1 ··· 11 12 13 14 15

2015年4月15日

摘要: 又被题意坑了...输入的一串数字的含义是第i个数字是第a[i]个发生的。而不是编号为i的历史事件的实际发生顺序。所以第一步要做的是转换,将原始数据转换成编号为i的历史事件的实际发生顺序。然后按照实际的发生顺序在aaa数组中给予权值,这是为了方便之后判断学生的答案中两个数字的相对顺序。#include... 阅读全文

posted @ 2015-04-15 17:54 tun~ 阅读(77) 评论(0) 推荐(0) 编辑

2015年4月11日

摘要: #include#includeint bot[30005];//以每个集合最底下的那个立方体作为根节点,初始化为自己本身int sum[30005];//表示以该元素为父亲节点的元素的编号的增量int cisum[30005];//根节点所在集合的立方体总数int num[30005];//记录每... 阅读全文

posted @ 2015-04-11 09:20 tun~ 阅读(83) 评论(0) 推荐(0) 编辑

摘要: 种类并查集,基本思想是每次压缩路径都必须同时更新子节点和根节点的关系,这种关系是通过子节点和父亲节点的关系,以及父亲节点与根节点的关系运算出来。压缩路径的findme();参考了大神的代码,做的第二个种类并查集....#include#includeint cri[100005];//记录每一个元素... 阅读全文

posted @ 2015-04-11 09:05 tun~ 阅读(167) 评论(0) 推荐(0) 编辑

2015年4月8日

摘要: 菜鸟第一次做这种。想了好一会儿.==首先还是初始化记忆数组,使得每一个元素的初始根节点是自己。然后是对输入的数据进行并集。我们拿出每组元素的第一个作为根节点。每次检测是否已经存在根节点。如果存在根节点压缩该元素通往新的根节点的路径,同时将其原来的根节点接在新的根节点上。第一次WA是因为忽略了剩余元素... 阅读全文

posted @ 2015-04-08 18:02 tun~ 阅读(144) 评论(0) 推荐(0) 编辑

摘要: 并查集思想,初始化每个元素的根节点为本身。求解目标是求解存在几个集合。解决方案:查看有多少个根节点,表现在记忆数组上就是有多少个元素的根是它本身。#include#define M 50005int ji[M];int findme(int a){ while(ji[a]!=a) { ... 阅读全文

posted @ 2015-04-08 16:55 tun~ 阅读(109) 评论(0) 推荐(0) 编辑

2015年2月13日

摘要: 剩余定理在线性代数里边好像是非常常见的东西,但是学渣还没学过线代所以感觉这种线性叠加非常神奇。题目描述:已知一个数模3余a,模5余b,模7余c,求出这个数的最小值。解答:未知的数用x表示。将x拆分为x1+x2+x3其中x1满足:x1%3 == a && x1%5 == 0 && x1%7 == 0x... 阅读全文

posted @ 2015-02-13 10:49 tun~ 阅读(212) 评论(0) 推荐(0) 编辑

2015年2月2日

摘要: HDU 1001就卡了。受到小白的启发遇到这样的循环题目直接转化成公式求解以优化时间。但是!我就是过不了!问题代码:#includeint main(){ int a; while(scanf("%d",&a)!=EOF) printf("%d\n\n",a*(1+a)/2... 阅读全文

posted @ 2015-02-02 21:21 tun~ 阅读(178) 评论(0) 推荐(0) 编辑

2014年11月12日

摘要: 基本性质(1)若p|(a-b),则a≡b (% p)。例如 11 ≡ 4 (% 7), 18 ≡ 4(% 7)(2)(a % p)=(b % p)意味a≡b (% p)(3)对称性:a≡b (% p)等价于b≡a (% p)(4)传递性:若a≡b (% p)且b≡c (% p) ,则a≡c (% p... 阅读全文

posted @ 2014-11-12 21:53 tun~ 阅读(138) 评论(0) 推荐(0) 编辑

上一页 1 ··· 11 12 13 14 15