- 博客(99)
- 资源 (28)
- 收藏
- 关注
原创 51Nod-1192-Gcd表中的质数
ACM模版描述题解题意是求 ans=∑i=1n∑j=1m[gcd(i,j) is prime]ans = \sum_{i = 1}^n \sum_{j = 1}^m [gcd(i, j)\ is\ prime]很明显是莫比乌斯反演的问题,首先我们设 f(d)=∑i=1n∑j=1m[gcd(i,j)=d]f(d) = \sum_{i = 1}^n \sum_{j = 1}^m [gcd(i, j) =
2017-08-31 20:18:21 351
原创 51Nod-1227-平均最小公倍数
ACM模版描述题解默比乌斯反演 + 杜教筛 + 分块 + 欧拉函数!!!这个套路的题 51Nod51Nod 上真多……HOWARLI’s blog 可供详细参考!!!这几道套路题大佬差不多都写了,我就是看看大佬的题解拓展拓展眼界~~~代码#include <cstdio>#include <cstdlib>using namespace std;typedef long long ll;const
2017-08-31 16:40:09 494
原创 51Nod-1222-最小公倍数计数
ACM模版描述题解51Nod51Nod 上这种类型的问题大概有个七八道吧,都是莫比乌斯函数 + 杜教筛,由于我的数论基础实在是差,学得始终不得章法,每次都得看大佬们的题解。WorldWide_D’s blog 有详细的问题分析和推导过程,大家可以仔细看看,我就不说太多废话了。代码#include <cstdio>#include <cstring>#include <algorithm>usin
2017-08-31 16:03:19 438
原创 事件轴-节点Two
正如我暑假开始所预料的,在暑假结束我的浏览量将会达到 50W50W,今天早上起床一看,果然已经五十万了,本想着昨天就能够五十万,没成想出现了些许的偏差。现在提前完成了大一的目标——“大学四年内博客浏览量破 50W50W”,并且是只用了一半不到的时间,感觉挺好的,按照我现在每天 30003000 的访问量,预计等我大学毕业能够破 200W200W,鉴于在未来两年我将会专注考研,所以博客理论上不会像现在
2017-08-30 17:42:06 451 2
原创 51Nod-1059-N的阶乘 V2
ACM模版描述题解正如评论区那个初一的大佬所说的那样……初一就玩转 FFTFFT 感觉有些丧心病狂啊……内心溅射一万点伤害!我现在连模版都用不好……代码#include <iostream>#include <stdio.h>#include <cmath>#include <algorithm>using namespace std;typedef unsigned long long ul
2017-08-30 17:28:15 742
原创 51Nod-1380-夹克老爷的逢三抽一
ACM模版描述题解首先发一下官方题解吧:按照官方题解写的代码发现自己一直在第 2121 组数据 TLETLE,很明显,这组数据是后来加上去专门卡数据的。于是发现自己的代码中忽略了一个部分是暴力的思维,在查找左右两侧可选的村民时,我用了两个循环,这显然是不行的,所以我需要使用链表的思维,这样查找的复杂度就是 O(1)O(1) 了,也就顺利的 ACAC 了。代码#include <iostream>#
2017-08-30 16:53:55 687
原创 51Nod-1033-骨牌覆盖 V2
ACM模版描述题解第一次接触插头 dpdp,感觉好厉害的说,详细的看了看 cdqcdq 大佬的那个关于插头 dpdp 的 PPTPPT——《基于连通性状态压缩的动态规划问题》算是对插头 dpdp 有了一丢丢的理解,然后再反过来看这个题依然是不会……找了半天找到一个不错的题解,讲得虽然不算十分详细,但是如果看了上述的 PPTPPT 后再看这个题解,应该是不难理解的,lastone’s blog 详细的
2017-08-30 00:02:01 848 3
原创 2017 多校训练赛-总结
紧张兮兮的 20172017 年度的多校训练赛总算是结束了,一如往常(虽然这是我第一次打),十场比赛,每场比赛十余道题,难道较 ACMACM 区域赛稍大一些。这一个月,着实不好熬,每周都要被大佬们按在地上摩擦,还是两次,我很难受……十场比赛下来,成绩并不理想,好的时候能进前二百,差的时候三百都碰不到,最后十场取八场算总成绩,刚好处于二百五左右,大概是在说我多校打得有些二百五?我不是特别能够接受这个成
2017-08-29 15:11:53 686 6
原创 HDU-2017 多校训练赛10-补题
ACM模版这个第十场多校貌似是朝鲜出题,题解都是英文……我想问一句,朝鲜上网不贵吗?这场比赛没有打成,因为学校断网了,所以我就没能打这场比赛,赛后也没有及时的补题,因为我当天下午回家了,昨天才回来,把之前落下来的多校 99 补了一下,又补了几道这场比赛的题。1001-Admiral>>>BFS + HASH<<< 类似于八数码问题。1002-Array Challenge>>>矩阵快速幂<<< 推导
2017-08-29 14:34:49 649
原创 HDU-2017 多校训练赛10-1001-Admiral
ACM模版描述 题解这个题和八数码的问题十分像,如果没有记错的话,八数码那个题用到的也是 搜索+HASH搜索 + HASH,不过它的 HASHHASH 利用的是康拓展开式,这里我们采用的 HASHHASH 略微不同,就是一个普通的 HASHHASH,稍微想想应该是可以想开的。代码#include <cstdio>#include <cstring>#include <iostream>#in
2017-08-29 13:27:03 485
原创 HDU-2017 多校训练赛10-1002-Array Challenge
ACM模版描述题解题意很简单,是求 ⌊an‾‾√⌋ % MOD\lfloor \sqrt{a_n} \rfloor\ \%\ MOD。设 fn=⌊an‾‾√⌋ % MODf_n = \lfloor \sqrt{a_n} \rfloor\ \%\ MOD, 首先我们找出前几项看看有啥子规律, f2=31,f3=197,f4=1255,f5=7997,f6=50959f_2 = 31, f_3 =
2017-08-29 12:08:29 469
原创 HDU-2017 多校训练赛10-1008-Monkeys
ACM模版描述题解这个题主要是卡 I/OI/O,需要一个输入外挂,让人头痛的是普通的输入外挂还不行,需要一个十分强大的外挂……当然,这个外挂我一会儿要添加到我的模版中,真的不错。代码#include <cstdio>#include <cstring>#include <algorithm>#include <vector>#include <queue>using namespace st
2017-08-28 23:52:28 405
原创 HDU-2017 多校训练赛10-1010-Schedule
ACM模版描述题解典型的贪心问题,用 setset 维护一下,二分搞搞就行了。代码#include <iostream>#include <algorithm>#include <cstdio>#include <set>using namespace std;typedef long long int ll;const int MAXN = 1e5 + 5;int n;struct node
2017-08-28 20:52:04 380
原创 HDU-2017 多校训练赛10-1011-Two Paths
ACM模版描述题解这个题是裸的次短路算法,用 A∗A^* 算法比较好一些。代码#include <iostream>#include <cstdio>#include <queue>#include <cstring>using namespace std;typedef long long ll;const ll INF = 1e18;const int MAXN = 1e5 + 5;in
2017-08-28 20:03:28 361
原创 HDU-2017 多校训练赛9-1006-Senior Pan
ACM模版描述题解官方题解:比赛时知道是最短路,但是没有写出来,真无奈ㄟ( ▔, ▔ )ㄏ……代码#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;typedef long long ll;const ll INF = 0x
2017-08-28 18:19:33 447
原创 HDU-2017"百度之星"程序设计大赛-复赛-1006-Valley Numer II
ACM模版描述 题解数据这么小,用状压刚刚好,枚举低位点,考虑所有高位点与其的组合即可。代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int MAXN = 1e4 + 10;const int MAXM = 100;const int MAXD = (1 << 15) +
2017-08-23 23:24:47 456
原创 HDU-2017 多校训练赛8-1006-Fleet of the Eternal Throne
ACM模版描述题解很明显是 ACAC 自动机,可是我学倒是学过,没有正儿八经的写过,套套模版还行,稍有变动就见鬼了,过几天得刷一刷 ACAC 自动机的专题了。这个题大致是搞懂了,但是写起来还是有些心有余而力不足,还是得多练习啊!代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int
2017-08-23 19:56:55 372
原创 HDU-2017 多校训练赛8-1002-Battlestation Operational
ACM模版描述 题解比赛时,看出来这个题是需要用到莫比乌斯函数来解,但是无奈自己太笨,不懂得变通,没有做出来,赛后找了一下大牛们的题解,看到一个不错的。该题解来自于 Lsxxxxxxxxxxxxx 的博客,他的推导过程和莫比乌斯函数的代入应用过程十分详细,让我对莫比乌斯函数的使用进一步了解了一些,很不错的题解,666~~~代码#include <iostream>#include <cstrin
2017-08-23 19:21:10 369
原创 HDU-2017 多校训练赛9-补题
ACM模版这场比赛运气挺好,水了四道题,尽管很多人做了五道,但是我挺知足了……貌似第六题是最短路,没有好好看它,有些可惜了,明天抽空补补吧……1002-Ch’s gift>>>LCA + 主席树<<< 很考验细心与耐心的一道题。1005-FFF at Valentine>>>dfs<<< 正反向搜索搞搞。1008-Numbers>>>贪心<<< 利用 mapmap 进行离散优化,然后贪心策略即可。1
2017-08-22 21:22:38 451 1
原创 HDU-2017 多校训练赛9-1010-Two strings
ACM模版描述题解这个 dpdp 很好,好多人都尝试用正则过关,但是不知道有没有大佬如愿以偿……WAWA 了两发,找到了两个 bugbug,一个是因为 ∗* 可以表示前一个字符出现 00 次;另一个是因为当开头存在星号时,其实是第二个字符为星号时,我们需要考虑这个第一个的字符出现 00 次,也就是考虑类似于 aa 和 n∗an*a 的情况。这个题花费了一段时间,但是不得不说,这个题出得很有水平。尽管
2017-08-22 21:13:51 439 1
原创 HDU-2017 多校训练赛9-1008-Numbers
ACM模版描述题解数据结构用 mapmap,在此基础上进行贪心策略就好了。不难,和前几天的多校的有一道题好像挺相似的。代码#include <iostream>#include <map>using namespace std;map<int, int> mii;const int MAXN = 1111;int m;int a[MAXN];int main(int argc, const ch
2017-08-22 21:06:57 445
原创 HDU-2017 多校训练赛9-1005-FFF at Valentine
ACM模版描述题解两遍 dfsdfs,正着一遍,反着一遍,准确说不是两遍,而是每个位置都需要两遍,有些暴力的意味,但是还真的 ACAC 了。代码#include <cstdio>#include <vector>#include <cstring>#include <algorithm>using namespace std;const int MAXN = 1111;int n, m;bo
2017-08-22 21:02:30 459 1
原创 HDU-2017 多校训练赛9-1002-Ch’s gift
ACM模版描述题解这个题做法五花八门的,有的人用 树链剖分+扫描线树链剖分 + 扫描线 过的,有的大佬是用 树状数组树状数组 过的,反正方法太多了,我也很懵逼……而我,用的是 LCA+主席树LCA + 主席树 搞得,这个解法真是个野路子,虽然 ACAC 了,但是花了我最后的两个多小时调试……代码#include <iostream>#include <vector>#include <algor
2017-08-22 20:59:17 621
原创 HDU-2017 多校训练赛7-1002-Build a tree
ACM模版描述题解官方题解:其实就是 kk 叉堆上的 dpdp……比赛时白痴了没有看这个题……浪费了。代码#include <cstdio>#include <algorithm>using namespace std;typedef long long ll;const int MAXN = 111;const int MAGIC = 62;const ll INF = 0x3f3f3f3f
2017-08-21 20:16:56 310
原创 HDU-2017 多校训练赛6-1010-Gameia
ACM模版描述题解找到一个感觉比官方题解更好的题解,是出自 一晌贪欢- 大佬之手。典型的博弈问题,需要用到搜索来搞,准确说是 树形dp树形dp,具体的题解如下:像博弈论这种问题的关键还是静下心来慢慢找其中的博弈关系,举几个例子对比一下,看看其中导致胜负各异的核心区别在哪儿,当然,运气也是很重要的,有时候一眼就能看出来其中的规律,有时候却卡得死死地……还是经验问题。代码#include <cstdio
2017-08-21 19:09:21 314
原创 HDU-2017 多校训练赛6-1007-GCDispower
ACM模版描述题解最讨厌莫比乌斯反演之类的问题了……不想说啥了,自己好笨的。ZLH_HHHH 的博客,这里讲得还好了,可以看看。莫比乌斯反演 + 树状数组 + 离线。代码#include <algorithm>#include <string.h>#include <stdio.h>#include <vector>using namespace std;typedef long long l
2017-08-21 18:26:25 406
原创 HDU-2017 多校训练赛6-1002-Mindis
ACM模版描述题解这个题官方题解是用反演搞的,但是我不是特别会,看到我 佐学姐 用 平面几何 + 代数方法 解的这个题感觉十分巧妙,也更加容易理解一些。佐理慧’s blog,虽然学姐写的十分详细,但是我依然因为高中的数学知识都不知道丢哪儿了而看了好一会儿,数学这东西,说忘就忘啊。利用椭圆逼近获取最近距离即可。代码#include <algorithm>#include <cstring>#inc
2017-08-21 17:40:50 612 1
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-部分题解及代码
ACM模版这次划水划的还好,约莫是可以进现场赛的,只是风浪太大了……好多题都读不懂。1001-Vertex Cover>>>构造<<< 构造一个二分图,思路很巧妙。1003-Friend-Graph>>>暴力枚举<<< 这个应该算是签到题,暴力枚举就能过。1004-A Secret>>>KMP<<< 加强版 KMPKMP 计数。1005-CaoHaha’s staff>>>计算几何&
2017-08-20 18:20:04 3120 14
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-1007-Palindrome Function
ACM模版描述题解枚举进制,动态规划即可。这个题是原题改的,听说是 lightoj1205lightoj1205 改的,原题是固定的十进制,而我们这个题进制是不固定的,需要枚举,所以在原题基础上加上枚举即可,并且注意记忆化,小心超时,初始化一次就好了。代码#include <iostream>#include <cstdio>using namespace std;typedef long lon
2017-08-20 18:09:05 668
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-1005-CaoHaha's staff
ACM模版描述题解预处理出来所有情况下最大能够构成的面积,然后二分即可。代码#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int MAXN = 1e5 + 10;double n;double ans[MAXN];void init(){
2017-08-20 18:02:27 692
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-1004-A Secret
ACM模版描述题解这个题不难解,因为是模版题,我有一个模版是专门查找模式串在原串中出现的次数,而这个题呢?求的是每一个模式串的后缀串在原串中出现的次数乘以长度之和,所以一开始我是暴力枚举后缀的,然而超时了,后来发现这个模版的求解思路其实就是从局部到全局的一个查找,那么我们完全可以在一次查找中查找出所有的后缀出现的次数,当然,说起后缀可能有些绕,我们先将两个串全部翻转一下就好了,这样就成前缀串了。代码
2017-08-20 17:41:14 937
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-1003-Friend-Graph
ACM模版描述题解判定一个无向图是否有三个点的团或者三个点的独立集,这个题暴力就能过,最起码一开始是这样的,后来貌似这个题的时限修改了,不知道会不会暴力超时了……反正一开始是这样 AA 掉的。代码#include <iostream>#include <cstdio>using namespace std;typedef long long ll;const int MAXN = 3e3 + 10
2017-08-20 17:02:47 1077 5
原创 HDU-2017中国大学生程序设计竞赛-网络选拔赛-1001-Vertex Cover
ACM模版描述题解构造题,思路不好想,题解还是十分容易理解的,也算是一种贪心的构造了。代码#include <iostream>#include <cstring>using namespace std;const int MAXN = 1e4 + 5;pair<int, int> pii[MAXN];int a = 99, b = 111, c = 0;void solve(){ fo
2017-08-20 16:58:17 1119
原创 事件轴-节点One
忽然想要记录一下我特别有重大意义的事件,额,我这句话好像冗杂了,额,还是糅杂?分不清了,最近语文水平日益萎缩,写个博客语句都不通顺……于几日前,好像是 8.168.16 日下午,不对,是晚上七点左右,我成功 AA 掉了 51Nod51Nod 上的第四百题,排行榜位于第 3737,刚好是再往前两天我进入了排行榜第二页,我的个签也得改了,发个图纪念一下,毕竟对于我这种划水高手、打榜菜鸡来说,意义十分重大
2017-08-18 17:32:02 886 18
原创 HDU-2017"百度之星"程序设计大赛-复赛-补题
ACM模版这场比赛划水划得十分开心,初赛第二场 rating+263rating + 263,这场复赛又加了 196196,1500+263+196= ?1500 + 263 + 196 =\ ?,嗯,对,19591959,成功水到紫名,谢谢百度给了我一次划水的机会。为什么说划水呢?因为“原题之星”嘛,第一道是签到题就不说了,第三题是原题,dpdp,第五题又是 dpdp,一个数位 dpdp,成功水到
2017-08-18 16:59:54 601 1
原创 HDU-2017"百度之星"程序设计大赛-复赛-1005-Valley Numer
ACM模版描述题解很明显的数位 dpdp,记忆化搞搞,注意不要每次都重置 dp[][][][][]dp[][][][][],因为是多组数据,如果每次都重置,会超时的,初始化为 −1-1 然后就可以了,就算每组数据的 nn 不一样也不影响数据的记忆化。代码#include <stdio.h>#include <string.h>#include <iostream>#include <algor
2017-08-18 16:50:50 356
原创 HDU-2017"百度之星"程序设计大赛-复赛-1003-Pokémon GO
ACM模版描述题解这个题一开始,我想着去 OEISOEIS 查查看,也许可以水过,后来发现不行,接着,就发现这个题和 NYOJNYOJ 上的一个题炒鸡一样,除了题面背景不一样外,其他都是一样的。然后就划水水过了……这是一个 dpdp 问题,给大家提供一个讲解十分详细的博客,Yoangh’s blog,写的炒鸡好。谢谢大佬给我一次拿衣服的机会。代码#include <stdio.h>const int
2017-08-18 16:47:38 815
原创 HDU-2017"百度之星"程序设计大赛-复赛-1001-Arithmetic of Bomb
ACM模版描述 题解这个题是签到题,出的不好,描述不到位。或者就是数据比较弱?第二个数字是个位数……那就很水了。代码#include <iostream>#include <cstring>using namespace std;const int MAXN = 1111;const int MOD = 1e9 + 7;char s[MAXN];int main(int argc, const
2017-08-18 16:42:53 575
原创 HDU-2017 多校训练赛8-补题
ACM模版今天的比赛真让我难受,题目辣么长,开始二十分钟后竟然 0A0A,俨然让我感觉自己这次要爆零,搞了俩小时依然无果,好在没有放弃,总算是干掉了第 1111 题,然后又成功水过第 0808 题,有些出乎我的意料了,但是好在我还是坚持到了最后,尽管止步于两题。1008-Hybrid Crystals>>>划水<<< 大概是数据水才水过的吧……1011-Killer Names>>>预处理<<< 预
2017-08-17 17:09:51 786 3
原创 HDU-2017 多校训练赛8-1011-Killer Names
ACM模版描述题解先预处理出来组合数,然后递推就能解决。虽然这个题 AA 的人最多,但是我感觉他并不是签到题,因为我推了好久才推出来,毕竟我的数论基础那么差,实在是恼人……代码#include <iostream>using namespace std;typedef long long ll;const int MAXN = 2222;const int MOD = 1e9 + 7;int n,
2017-08-17 17:03:25 595
ACM模板-f_zyj 更新(内含 v 1.1 和 v 2.1 的 .pages 格式和 .pdf 格式)
2017-09-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人