摘要: 上了fdu以来,自我训练基本处于半荒废阶段 也就跟着大部队一起训练,题解更是很长时间没更新了…… 第一次参加acm在ccpc合肥赛区栽了个大跟头,再这样下去岂不是要咸鱼…… 从开学到现在学的和自己做的题好多都没写题解,有时间在补吧…… 感觉以后做题之后还是写一个一句话题解吧(详细题解太耗时了) 这样 阅读全文
posted @ 2016-11-27 15:47 acphile 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 结论:我数论太渣了…… 言归正传……先列出几个常用的性质/结论 同余式: 1. da≡db (mod m) 则a≡b (mod m/(m,d) ) (这在取遍剩余系会用到) 2. a≡b (mod m) m'|m , a≡b (mod m') 3. a≡b (mod mi) i=1..k 等价于 a 阅读全文
posted @ 2017-07-29 23:58 acphile 阅读(1178) 评论(0) 推荐(0) 编辑
摘要: 以此纪念我都快忘了的后缀自动机(捂脸) 不过这题有两种做法: 用后缀自动机,先把原串再接遍中间加入特殊连接字符再把原串反接两遍,对这个新构造出的串做后缀自动机。(或者直接建立广义后缀自动机) 下面只要统计长度小于等于 n 的串即可。这可以从 parent 树即后缀树来考虑,注意到每个节点可以接收的子 阅读全文
posted @ 2017-07-19 16:48 acphile 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 这时2016 Pacific Northwest RC的题目 颓了几天感觉当初这套题不错,补完啦(UPD) gym101201A 签到题,读对题即可 1 #include<bits/stdc++.h> 2 3 using namespace std; 4 5 char a[100]; 6 int f 阅读全文
posted @ 2017-07-06 22:45 acphile 阅读(641) 评论(0) 推荐(0) 编辑
摘要: 求与询问点欧几里德距离前m小的点 其实就是在kdtree询问的时候用优先队列维护一下就好了 好久没写kdtree练一练,注意这道题是多测 1 #include<bits/stdc++.h> 2 3 using namespace std; 4 const int inf=1e4+5; 5 int k 阅读全文
posted @ 2017-07-03 14:09 acphile 阅读(277) 评论(0) 推荐(0) 编辑
摘要: hdu5307 一般来说一类要求满足整数等式关系才进行答案贡献的问题 没有思路的话可以考虑生成函数转化 题解是构造级数(∑i*x^si)(∑x^(-si-1))-(∑x^si)(∑(i-1)x^(-si-1) 则x^S次方前面的系数就正好是(i-j+1),而这个式子是可以用fft快速展开的,非常巧妙 阅读全文
posted @ 2017-06-28 17:37 acphile 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 忙完期末考试该回归训练了…… 期末考试前还是训了几次,有几道题的题解还是值得补(mark)一下的 hdu5321 比较经典的莫比乌斯反演+组合数学 具体见http://blog.csdn.net/smilewsw/article/details/47157189 1 #include<bits/st 阅读全文
posted @ 2017-06-28 15:59 acphile 阅读(229) 评论(0) 推荐(0) 编辑
摘要: 4月真是没写啥题,这题还是月初写的…… 不错的插头dp,首先由n和m的范围知肯定是轮廓线是横向划的 问题的难点在于怎么处理下面两个问题 1.怎么处理独立插头 2.怎么处理完全将W和L左右隔开 先说独立插头,一开始我是增加独立插头位来处理的,一直wa…… 后来意识到,因为独立插头一定是在第一行和最后一 阅读全文
posted @ 2017-04-21 21:49 acphile 阅读(391) 评论(0) 推荐(0) 编辑
摘要: 听说大佬都是看到1.693147就知道是ln(2)+1我是服气的 不过老老实实推的话就看你大一数分/高数是不是学扎实了 令 把L移到右边并两边求导可得,即 令 代入最开始的公式得到 化简可得,得解 1 #include<bits/stdc++.h> 2 3 using namespace std; 阅读全文
posted @ 2017-03-26 17:27 acphile 阅读(362) 评论(0) 推荐(0) 编辑
摘要: 看了青岛赛区的题简单学了一下kd,感觉这东西还是挺厉害的 一般kd树找最近点对最坏是O(n),但是随机情况下跑得还是很快的 kd树是一棵BST,但是每一层的关键字不同 一般写法是按照每一维轮流来,这一维小的放左子树,大的放右边的 每个节点再维护这节点所管辖的节点每一维的范围,这样基本就能做题了 kd 阅读全文
posted @ 2017-03-26 16:57 acphile 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 好题,详细题解在这里http://blog.csdn.net/weiguang_123/article/details/8077385 这里回顾一下: 当i和j都在一个集合里会产生新的收益,是经典题直接建 当i和j不在同一个集合产生新的收益,需要点是二分图XY并把X或Y点集s-t反建 这里是类似的( 阅读全文
posted @ 2017-03-26 16:45 acphile 阅读(248) 评论(0) 推荐(0) 编辑