- 博客(71)
- 资源 (4)
- 收藏
- 关注
原创 Codeforces 662C Binary TableFWT快速沃尔什变换
CF-662C Binary Table 题解:这题难度思维还是有点大,如果要靠自己想出来的话。题意就是n*m的矩形,每次可以反转一行或者一列,无数次。问最少的1的个数。n<=20 m<= 1e5这就有意思了,n<=20,这一看就是想让我们状压嘛。。直接把20行每一列压成一个二进制数f[i]。同时之前学位运算的时候我们知道,异或0表示不变,异或1表示取反,那么我们行...
2019-11-01 13:14:20 308
原创 BZOJ 4589: Hard Nim FWT快速沃尔什变换
这题感觉有利于理解FWT对序列本质上的影响。链接:BZOJ 45891<=n<=10^9, 2<=m<=50000。 80组数据我看到是没想到怎么用FWT做,看了TT的题解懂得。感觉还是和FFT之类一样,要有往这个方向想的思维才可以。首先,定义函数f(x)=a0+a1x+a2x2+...+anxnf(x) = a_0 + a_1x + a_2x^2+...+a_...
2019-10-31 21:21:43 274
原创 2018-2019 ACM-ICPC, Asia Xuzhou Regional Contest H. Rikka with A Long Colour Palette 贪心
题目链接:https://codeforces.com/gym/102012题意不再赘述。这里看到海大过了,感觉是个不难的题,也想到了贪心,但是后面求方案卡住了。感觉是自己状态有问题吧,后面其实应该想出来的,题解有的都想到过,但是就是整合不到一起。首先,可以肯定,如果一段区间被覆盖超过K次一定会满足题意。证明不会,但是跑了几组复杂一点的数据都没卡住。然后想怎么找方案数。很显然需要离散化一下...
2019-10-03 20:05:17 538
原创 SDU图形学作业2——floor-fill填充
嘛= = 就是宽搜。需要注意的是,基础是画直线。画直线之前要先改成按像素画点,否则,你的画的范围只能是-1~1更改调用两个函数 gluOrtho2D(0, 1000.0, 0, 1000.0);//改成像素填充 glViewport(0, 0, 1000, 1000);然后display负责渲染背景色,因为我们有鼠标事件来操作了,display可以直接传空函数也没事主函数还要注意提...
2019-09-08 21:27:57 344
原创 Luogu P2414 [NOI2011]阿狸的打字机 AC自动机+fail树+树状数组
Luogu P2414 [NOI2011] 阿狸的打字机私以为Luogu题解的第一篇写的很好。。这里算是用我自己的理解重述一下吧。First-Step:暴力因为要匹配出现次数,而且是多个串的问题,会想到AC自动机。这里要求的是trie树上一个串在另一个串中出现的次数,也算是一个套路吧。记录一下trie树上每个位置代表了第几个串的结束,也记录每个串的结束位置。这样每次询问x在y中出现了多少次,...
2019-08-24 16:40:11 251
原创 Luogu P3804 后缀自动机模板
luoguP3804 后缀自动机这个题转化一下就是求每个子串的出现次数,也就是endpos集合的大小。参考oiwiki中的应用——出现次数就是新建节点时初始化cnt为1,clone时初始化cnt为0.然后长度排序,在link树中从叶子更新到根节点,就统计完了。这里主要解释一下为什么clone的点是赋值为0,非clone点赋值为1.首先,非clone点可以肯定它第一次出现,所以把它赋值为...
2019-08-21 15:15:10 219
原创 UVALive - 7343 Design New Capital NTT 快速数论变换
题目链接感觉跟上次那个FFT的题一样,思维难度不小,但是如果做过这种套路的题应该还是很容易想到的。题目:给你n个点,然后输出n个数,第i个数表示选出i个点,使得满足原点到每个点的距离最短。注意这里的最短意思是,原点就算是迁移到其他的点,距离不会变的更短。距离指的是曼哈顿距离。首先要注意一个很显然的性质(但是我没有想到),就是,如果要满足上述条件,那么原点必须是中点。中点的定义就是:(...
2019-08-19 16:13:12 215
原创 UVALive - 7345 The Hypnotic Spirals 高等数学+几何知识
The Hypnotic Spirals高数没学好的后果?其实本来这题就很难写,某T现场能写出来有点厉害啊。首先我们需要知道,当n=0时无解,n !=0时一定有解。正确性显然,不做讨论。考虑一个螺旋线,如何求一个螺旋线相对于原点的面积?高等数学的二重积分:如果已知所求面积两个端点的角度且角度差不超过2∗π2*\pi2∗π那么有S=∫abdθ∫0aθrdrS=\int_{a}^{b...
2019-08-19 13:11:51 184
原创 HDU 4609 3-idiots FFT+容斥原理 两种思路
题目就是要求给定n个数,求任选三个数,构成三角形的概率。暴力:n^3暴力枚举,TLE!那么FFT怎么做这题呢?我们把读入的每个长度用桶排序的原理,把它放到一个个桶里面,我们用FFT做这个序列本身的卷积。我们很容易发现,c[i]就是构成c[i]的方案数,比如:c3 = a0b3+a1b2+a2b1+a3b0for(int i = 0;i <= maxx;i ++)//插入的是ton...
2019-08-14 21:20:02 205
原创 GYM-101667-H Rock Paper Scissors FFT
GYM-101667-H规则就是剪子包袱锤,机器按顺序出,你也按顺序出,问你最多能拿多少分!你可以选择从那个位置开始出。乍一看,字符串问题,然后你就做不出来了。实际上是FFT,FFT卷积这个优美的性质。每次把我的出手序列反转,然后做卷积的时候就可以一一对应了!一共做三次FFT,每次把我能赢对面的赋值为1,比如我是剪刀,那我就把机器的包袱赋值1,我的剪刀赋值1,这样一遍FFT一下就得到了答...
2019-08-14 16:27:35 359
原创 FWT 快速沃尔什变换 学习笔记
数学多项式FWT啊,跟着黄睿智学的,睿智好强啊。睿智的参考链接首先,FWT问题是什么:已知A(X)和B(X),求C[i]=∑i=j@kA[j]∗B[k]已知A(X)和B(X),求C[i] = \sum_{i=j@k}{}A[j]*B[k]已知A(X)和B(X),求C[i]=i=j@k∑A[j]∗B[k]注意,中间是乘。@代表某个位运算。这类问题就是操作涉及到下标的位,娜扎斑马...
2019-07-21 16:19:10 219
原创 莫比乌斯反演 题目列表/合集
不定期更新:(只更新写了题解的题)1:CodeForces - 645F Cowslip Collections分数:2500题解:锟斤拷烫烫烫2:UVA 11426 - GCD - Extreme (II)题解:锟斤拷烫烫烫3:51nod 1192题解:锟斤拷烫烫烫我参考的做题列表:莫比乌斯反演题目列表及题解一些对反演有用的博客:1:POPOQQQ的课件,百度一大堆2:高...
2019-05-17 21:04:25 582
原创 CodeForces - 645F Cowslip Collections 莫比乌斯反演
题意:给出初始n个数,问每次增加一个数字后的k元组的gcd之和.思路:刚开始想到了反演,不过思路完全跑偏了。这个题算是我对反演的进一步理解了!一定要好好记住!首先,一看到gcd就要警觉,是不是和反演有关!我们来试着写一下答案:设f[i]表示选出来k个数的gcd恰好为i的数对的个数,那么答案就是:∑i=11e6i∗f[i]\sum_{i=1}^{1e6}i*f[i]i=1∑1e6...
2019-05-17 20:51:56 426 1
原创 UVA 11426 - GCD - Extreme (II) 莫比乌斯反演
坚持写博客!题目:求∑i=1n−1∑j=i+1ngcd(i,j)\sum_{i=1}^{n-1}\sum_{j=i+1}^{n}gcd(i,j)i=1∑n−1j=i+1∑ngcd(i,j)把结果写成表格的形式容易发现:Ans=∑i=1n∑j=1ngcd(i,j)−∑i=1ni2Ans = \frac{\sum_{i=1}^{n}\sum_{j=1}^{n}gcd(i,j)-\su...
2019-05-15 21:09:37 264
原创 51nod 1192 莫比乌斯反演
很基础的反演题,练练手。题目要求:∑i=1n∑j=1m[gcd(i,j)=p]\sum_{i=1}^{n}\sum_{j=1}^{m}[gcd(i,j)=p]i=1∑nj=1∑m[gcd(i,j)=p]枚举p:∑k=1primes∑i=1n∑j=1m[gcd(i,j)=prime[k]]\sum_{k=1}^{primes}\sum_{i=1}^{n}\sum_{j=1}^{m}...
2019-05-14 17:10:50 233
原创 HDU 1573 X问题 中国剩余定理(不互素)
X问题Time Limit: 1000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8706Accepted Submission(s): 3151Problem Description求在小于等于N的正整数中有多少个X满足:X mod a[0...
2019-04-08 11:58:08 262
原创 POJ 2689 Primer Distance 埃式筛法
题意:给定L,R,其中L,R <= 2^32,但是R-L <= 1e6。求[L,R]中,相邻素数中最近和最远的两个素数。好坑啊,思路是很明显:R-L比较小,所以我们用小区间去筛大区间。首先R最大是2^32则区间内的数最大用2^16就可以筛出来。所以我们先预处理2^16内的素数。然后每次输入L,R,我就去用每一个素数去筛给定的L,R但是L,R很大,用map会超时,所以我们把L,...
2019-03-05 20:28:48 221
原创 uva 1519 - Dictionary Size trie树+简单的数学
链接:题目链接题目大意:给定n个字符串,他们属于一个字典。现在要构造一个新的字典,它要么属于原字典,要么属于原字典的一个非空前缀+源字典的非空后缀。思路:首先看到前缀,后缀就应该直接想trie树,trie树正反建树可以知道一共有几个前缀和一共有几个后缀。假设前缀树有x1个节点,后缀树有x2个节点,那么答案ans=x1*x2.但是这样显然是重复的,我们看什么情况下会重复:样例...
2019-03-04 21:06:37 247
原创 String of Infinity ZOJ - 3784 AC自动机+强连通分量
题目地址题意:给定n个禁止串,只要求用前m个字母,问能否构造出一个无限长的字符串,其不包含任何一个禁止串并且没有循环节。如果是,输出Yes,否则输出No.思路:首先,禁止串。看到禁止串就想起了之前没过的那个AC自动机+矩阵快速幂的病毒串。所以可以联想到是先构建禁止串的AC自动机,然后再建图。然后就是朴素的trie树+AC自动机构造。建图一定是要求两头都没有禁止串标记才...
2019-03-04 20:52:07 211
原创 HDU5961 传递 (随机化 || 暴力 || 正解)
HDU - 5961 <-题目链接 思路:思路1:随机化这题不能随机答案并输出,20组数据几率还是太小了点。我们想,它是个完全图,又是单向的,数据生成应该也不太好构造,2000*2000呢,所以我们想是不是可以随机化水一水。srand(time(NULL));每次随机三个数,然后我们检验这三个数的连通性。这个随机不一定是对的,因为最终图里可能只有一个小区域...
2018-08-24 11:32:58 437 1
原创 第四周周赛——三金三银两铜+签到
A——HDU 5974 A Simple Math Problem <-题目链接 签到题Given two positive integers a and b,find suitable X and Y to meet the conditions: X+Y=a ...
2018-08-20 22:43:25 518
原创 SDUACM2017级个人排位赛2个人总结
2距离考完试比较近而且题比较难,所以就先写2了。在这之前还是要先总结一下自己的所作所为,寒假不做题,上学期又一直浪,基础本来就不好,导致成绩急速下滑。这次划线我在省赛之下,所以,自己心里有点C数。再说考试心态,紧张个P,动不动就浮躁,看个题看不完就看别的,老老实实正着看题!比赛地址A - Watching TV Gym - 101498A题目链接——A题目大意:熊孩子不学习,他爸怒了,让他以后只能...
2018-03-12 19:22:50 344
原创 面向对象(OO)学习记录——个人银行管理初步~
NOIP考得不好,没打算考省选……,于是这两天在教室看了会OO的书,感觉和算法比差远了,个人理解OO是不带脑子代码量大的一个东西吧……还是更喜欢算法,但是退役了,就学一下OO吧~ 这里看的书是 《C++语言程序设计》清华出的……好像是10年的,也是借来看的,过两天买本新的看~这是书上的一个例题,设计一个个人银行管理程序,我的打法和书上不太一样,是按自己理解来打的~题目:支持存款取款,结算利息
2015-12-17 13:42:49 926 1
原创 [洛谷模板大赛]题解 模板整理QAQ
题目地址:NOIP RP++题目描述不用说,都是交模板就能AC的,昨晚就A了4个题因为时间不太够了…… 最近也想整理模板,看到这么个模板大赛自然是把持不住辣~ 除了T2平衡树不会做之外其他的都可以,T5好像是递归版Spfa,现学了一下,其实思想都一样,不用学,其他的没什么了,看模板~ T1:线段树:#include<iostream>#include<cstdio>#include<cst
2015-11-05 09:18:25 1638 2
原创 codevs1928 加密算法 数论[四星]
题目链接:CodeVs 妈呀长知识了……题目描述 DescriptionRivest是密码学专家。近日他正在研究一种数列E={E[1],E[2],……,E[n]},且E[1]=E[2]=p(p为一个质数),E[i]=E[i-2]*E[i-1] (若2 < i<=n)。例如{2,2,4,8,32,256,8192,……}就是p=2的数列。在此基础上他又设计了一种加密算法,该算法可以通过一个密钥q (
2015-11-02 20:37:15 916
原创 POJ3169 Layout 差分约束系统[三星]
题目链接:POJ CodeVs 由于是英文题目就不再复制题面了~昨天看CV月赛的题看到这个题,因为Std有个地方看不懂所以自己再做了一下。首先本题仔细读题后发现求最大值,于是就跑最短路: 然后再仔细读题会发现3个约束条件: ①:两个妹子不和,b-a >= c的情况,将它转化为最短路形式的约束条件就是:a<=b-c(这里我用的我总结的方法,链接:QAQAQAQ)这种情况下是b向a建一条权值为-
2015-11-01 15:28:12 969
原创 BZOJ1024:[SCOI2009]生日快乐
1024: [SCOI2009]生日快乐Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 1894 Solved: 1347[Submit][Status][Discuss]Descriptionwindy的生日到了,为了庆祝生日,他的朋友们帮他买了一个边长分别为 X 和 Y 的矩形蛋糕。现在包括windy,一共有 N 个人
2015-10-30 21:40:03 2677
原创 2010年NOIP全国联赛提高组 T4 引水入城
题目链接:这是codevs,其他各大OJ都有,只是本人喜欢Codevs题目中有图片,建议大家去原处看图之后再来看题解……题解: 看完题目后,首先想什么情况下无解,那不如先假设第一排全部建设蓄水厂,然后搜索一下有没有城市喝不到水,这样复杂度是O(地图大小QAQ)的,500*500绰绰有余(记忆化的前提下)。for(int i = 1;i <= m;i ++) if(!vis[1][i]) bfs
2015-10-30 10:16:19 743 1
原创 Smart OJ 2484 Sum of xor 思维题 [二星]
题目Problem Sum of xor Time Limit: 1000ms Memory Limit: 65536KB题目链接:SMOJ描述Descript.求1⊙2⊙…⊙N 的值。 A⊙B 即A,B 按位异或。输入Input1
2015-10-29 13:15:20 929 4
原创 POJ1061 青蛙的约会 数论
青蛙的约会 Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 99911 Accepted: 19128Description两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高
2015-10-29 11:03:40 766
原创 NOIP2015游玩记
从高一开始学OI到现在,这是第一年参加NOIP复赛,说实话虽然刷了这么多题也做过省选题,但是对自己的实力还是感觉很虚,觉得总有些地方没有掌握好,临近复赛,应该觉得比平时更有干劲才是,巩固自己的知识,看看自己写的博客,拿到该拿到的分,读题认真仔细,坚持不作死的本性!不要给青春留下遗憾! NOIP 2015 ; Bless All ; RP ++;
2015-10-29 07:19:29 1157 14
原创 [SDOI2011][BZOJ2241][codevs1564]打地鼠 [三星~]
SDOI2011 D1T1 ~ Description打地鼠是这样的一个游戏:地面上有一些地鼠洞,地鼠们会不时从洞里探出头来很短时间后又缩回洞中。玩家的目标是在地鼠伸出头时,用锤子砸其头部,砸到的地鼠越多分数也就越高。 游戏中的锤子每次只能打一只地鼠,如果多只地鼠同时探出头,玩家只能通过多次挥舞锤子的方式打掉所有的地鼠。你认为这锤子太没用了,所以你改装了锤子,增加了锤子与地面的接触面积,使其每次可
2015-10-28 11:21:04 1148
原创 [NOIP备考]随机化贪心解决动态规划问题(一星)
还记得上一篇我写的拔河的题解嘛? 上篇链接—->这里题目描述 Description一个学校举行拔河比赛,所有的人被分成了两组,每个人必须(且只能够)在其中的一组,要求两个组的人数相差不能超过1,且两个组内的所有人体重加起来尽可能地接近。输入描述 Input Description数据的第1行是一个n,表示参加拔河比赛的总人数,n<=100,接下来的n行表示第1到第n个人的体重,每个人的体重都是整
2015-10-27 16:12:08 942
原创 [胡策题] 魔法水晶 树上问题~(四星)
由于题目是从外校弄来的……于是只有数据和题面~这里我会放上题面,如果有想要数据的可以留言~ 魔法水晶【题目描述】魔法水晶承载着魔法师的法力,是魔法师法力的结晶。 Elsa 拥有 n 个魔法水晶。为了让这 n 个魔法水晶处于相互联系的状态中, 并且不出现流动混乱,Elsa 用 n-1 条法力流动通道将魔法水晶联系起来。每条 通道直接
2015-10-27 13:04:05 863
原创 codevs4290 二元一次不定方程~(三星)
题目链接——————>codevsvsvsvsvsvs题目描述 Description背景: (^q^/∠) 描述:已知a,b,c, 求满足ax+by=c的整数对(x,y)中x为正整数且最小;若此时0<=x,y,则输出x y,若此时y<0则输出“sometimes naive”(没有双引号);若没有整数对(x,y)满足条件则输出“too simple”输入描述 Input Descrip
2015-10-25 21:36:43 651
原创 [技巧]求树上最长链(原题TYVJ)[二星~]
原题目是TYVJ的,但是现在tyvj评测机莫名鬼畜,于是我就把数据弄了下来,并且附上评测工具~ 题目及数据地址——————–>百度网盘 评测工具(柠檬Lemon)——–>同样是百度网盘呢 先说一下Lemon的配置吧,选择本地的g++路径之后,创建本地的一个测试文件夹,其他的就和cena差不多啦~,lemon没有cena的一些bug,比cena好用呢~ 不过lemon默认逐字比较,需要手动设置
2015-10-25 10:27:59 2180
原创 某考试题~低头一族 [好题](简要的数学推倒)[四星]
题目描述 Description一群青年人排成一队,用手机互相聊天。 每个人的手机有一个信号接收指标,第i个人的接收指标设为v[i]。 如果位置在x[i]的人要和位置在xj的人聊天,那么这两人组成的一对的信号发射强度就是abs(x[i]-x[j])*max(v[i],v[j]). 现在我们想知道,这些人所有对子中的信号发射强度的总和。输入输出格式 Input/output输入格式:第一行一个整
2015-10-25 09:39:14 808
原创 [学习]用tarjian算法求强连通分量,tarjian算法缩点[学习知识~]
tarjian算法求强连通分量网上有很多博客写了,并且这个东西一个人一个打法,还是个人理解了自己打比较好,这里附上我的代码~void dfs(int u){ low[u] = pre[u] = ++dfs_clock; s.push(u); for(int i = head[u];i;i = next[i]) { int v = edges[i].t
2015-10-25 08:24:28 1381
原创 codevs1376帕秋莉•诺蕾姬 东方幻想乡系列模拟赛Stage 2[三星]
题目很老但是很经典~ 题目链接:—————————————->题目地址题目描述 Description在幻想乡,帕秋莉•诺蕾姬是以宅在图书馆闻名的魔法使。这一天帕秋莉又在考虑如何加强魔法咒语的威力。帕秋莉的魔法咒语是一个仅有大写字母组成的字符串,我们考虑从’A’到’Z’分别表示0到25的数字,于是这个魔法咒语就可以看作一个26进制数。帕秋莉通过研究发现,如果一个魔法咒语所代表的数能够整除10进制数
2015-10-24 13:00:42 1199
原创 codevs1959拔河比赛[三星~]
题目链接:————————————>戳我~题目描述 Description一个学校举行拔河比赛,所有的人被分成了两组,每个人必须(且只能够)在其中的一组,要求两个组的人数相差不能超过1,且两个组内的所有人体重加起来尽可能地接近。输入描述 Input Description数据的第1行是一个n,表示参加拔河比赛的总人数,n<=100,接下来的n行表示第1到第n个人的体重,每个人的体重都是整数(1<=w
2015-10-23 12:48:05 1860 6
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人