
ZOJ
lajiyuan_
已经退役啦,会不定期更新cf博客 or 其他计算机知识相关的博客.
展开
-
【ZOJ 3430 Detect the Virus】 AC自动机
ZOJ3430 题意就是给你一个加密的单词,加密方式就是先把字符按照ASCII表转为2进制,再截取6个为一段转为10进制,再去表中改为对应字符。 我们只需要把所有关键字和文本串都解码之后,就是一个最朴素的AC自动机了。 密文转换方法是向kuangbin大神学习的,我们通过思考可以发现,解码的过程就是把四个字符转换为3个字符的过程,所以我们只要对加密串进行一些二进制操作,就可以直接将24位二进...原创 2018-06-13 19:32:48 · 290 阅读 · 0 评论 -
【ZOJ-2836-Number Puzzle】 容斥原理
ZOJ-2836-Number Puzzle 题意就是给出一个整数m,一个具有n个元素的数组,求出1-m中有多少个数至少能整除n数组中的一个数 这道题就是经典的给出某个数组去组合的问题,只要对当前选中元素取lcm即可 容斥原理第五题代码 #include<stdio.h> #include<iostream> #include<algorithm> ...原创 2018-09-12 22:13:28 · 207 阅读 · 0 评论 -
【ZOJ-3233-Lucky Number】 容斥原理
ZOJ-3233-Lucky Number 题意就是给你一堆幸运数,在给你一堆不幸运数,要求一个区间内的数有多少个数满足至少是一个幸运数的倍数,而且不是每个不幸运数的倍数。 我们可以把这两个问题分开来看,首先我们可以利用容斥求出所有至少是一个幸运数的倍数的数的个数,我们只要在这个过程中给把满足第二种条件的保留就可以了,把第二种条件进一步表达,就变为了不能整除所有不幸运数的lcmlcmlcm,而...原创 2018-09-12 22:14:07 · 210 阅读 · 0 评论 -
【ZOJ 4097-Rescue the Princess】无向图tarjan缩点+LCA
链接 ZOJ 4097-Rescue the Princess 题意 给你一个无向图(不一定联通),有q次查询,每次查询给出三个点u,v,w,问v和w是否可以到达u而且不经过相同的边。 做法 首先我们把整个无向图进行缩点,可以得到一棵森林,如果答案合法,那么u,v,w肯定要在一棵树上,而且v和w的LCA一定是u,但是这里要注意这时无根树,所以要加一些判断,对所有不合法情况判断即可。 代码 #inc...原创 2019-04-15 17:39:27 · 937 阅读 · 4 评论