随笔分类 -  OJ -- Loj

摘要:【LOJ 6682】梦中的数论(min_25筛) 题面 "LOJ" 题解 注意题意是$j|i$并且$(j+k)|i$, 不难发现$j$和$(j+k)$可以任意取$i$的任意因数,且$j\lt j+k$,所以答案就是: $$Ans=\sum_{i=1}^n {\sigma(i)\choose 2}$$ 阅读全文
posted @ 2019-07-12 21:03 小蒟蒻yyb 阅读(1450) 评论(0) 推荐(1)
摘要:【LOJ 2162】【POI2011】Garbage(欧拉回路) 题面 "LOJ" 题解 首先有一个比较显然的结论,对于不需要修改颜色的边可以直接删掉,对于需要修改的边保留。说白点就是每条边要被访问的次数可以直接模二。证明的话就是如果一条边被经过了两次,证明其连通了两侧的两个块,那么把这两次删掉,可 阅读全文
posted @ 2019-07-08 21:30 小蒟蒻yyb 阅读(424) 评论(0) 推荐(0)
摘要:【LOJ 2507】[CEOI2011]Matching(KMP,树状数组) 题面 "LOJ" 题解 发现要做的是排名串的匹配。 然后我们考虑把它转成这个位置之前有多少个数小于当前这个数,这样子只要每个位置都对应相等那么一定是合法的。 然后就可以类似$KMP$的预处理出一个$nxt$数组,然后再类似 阅读全文
posted @ 2019-07-08 10:51 小蒟蒻yyb 阅读(688) 评论(0) 推荐(0)
摘要:【LOJ 575】【LNR 2】不等关系(容斥,动态规划,分治FFT) 题面 "LOJ" 题解 一个暴力$dp$,设$f[i][j]$表示考虑完了前$i$个位置,其中最后一个数在前面所有数中排名是第$j$大,那么转移的时候枚举一下当前数是第几大,并且满足不等式的限制就可以了,然后拿前缀和优化一下就可 阅读全文
posted @ 2019-07-08 09:12 小蒟蒻yyb 阅读(826) 评论(0) 推荐(1)
摘要:【LOJ 573】【LNR 2】单枪匹马(线段树) 题面 "LOJ" 题解 考虑拿线段树维护这个值,现在的问题就是左右怎么合并,那么就假设最右侧进来的那个分数是$\frac{x}{y}$的形式,那么就可以维护一下每一个值的系数,就可以直接合并了。 ~~我代码又臭又长,还写得贼复杂~~ cpp inc 阅读全文
posted @ 2019-07-07 22:34 小蒟蒻yyb 阅读(546) 评论(0) 推荐(0)
摘要:【LOJ 2687】Vim(动态规划) 题面 "LOJ" 题解 发现移动的路径一定是每次往后跳到下一个某个字符的位置,然后往回走若干步,删掉路径上的所有$e$,然后继续执行这个操作。 这里稍微介绍一下线头$dp$,大概是把转移的路径画出来,最终要求能形成一个环,而每一个需要$dp$的位置代表一个点, 阅读全文
posted @ 2019-07-07 17:04 小蒟蒻yyb 阅读(678) 评论(0) 推荐(1)
摘要:【LOJ 3146】[APIO2019]路灯(树套树) 题面 "LOJ" 题解 考场上因为$\text{bridge}$某个$\text{subtask}$没有判$n=1$的情况导致我卡了$3.5h$左右,然后这题就只能匆匆$rush$了一个$60$分暴力...... 考虑维护出每一个时刻的亮的灯的 阅读全文
posted @ 2019-06-27 22:56 小蒟蒻yyb 阅读(568) 评论(0) 推荐(0)
摘要:【LOJ 3145】[APIO2019]桥梁(分块,并查集) 题面 "LOJ" 题解 因为某个$\text{subtask}$没判$n=1$的情况导致我自闭了很久的题目。。。 如果没有修改操作,可以克鲁斯卡尔重构树在线处理。或者按照边权排序离线并查集处理。 现在有修改操作,于是我们来分块。 我们对于 阅读全文
posted @ 2019-06-27 07:54 小蒟蒻yyb 阅读(641) 评论(0) 推荐(0)
摘要:【LOJ 3144】[APIO2019]奇怪装置(数论) 题面 "LOJ" 题解 突然发现$LOJ$上有$APIO$的题啦,赶快来做一做。 这题是窝考场上切了的题嗷。写完暴力之后再推了推就推出正解了。。。 考虑$t1,t2$两个时刻,如果两个时刻的$(x,y)$相等的话,考虑是一种什么样的情况。 $ 阅读全文
posted @ 2019-06-26 20:35 小蒟蒻yyb 阅读(476) 评论(2) 推荐(0)
摘要:【CTS2019】氪金手游(动态规划) 题面 "LOJ" "洛谷" 题解 首先不难发现整个图构成的结构是一棵树,如果这个东西是一个外向树的话,那么我们在意的只有这棵子树内的顺序关系,子树外的关系与这棵子树之间的限制无关。所以我们只需要强制根节点在其他儿子之前的就行了(你可以认为如果这次随机抽到了子树 阅读全文
posted @ 2019-05-23 21:06 小蒟蒻yyb 阅读(616) 评论(0) 推荐(0)
摘要:【CTS2019】珍珠(生成函数) 题面 "LOJ" "洛谷" 题解 lun题可海星。 首先一个大暴力$sb$的$dp$是设$f[i][S]$表示当前考虑完了前$i$个珍珠,$S$集合中这些颜色的珍珠当前还有一个没有匹配。这个随便转移就行了。 然后发现并没有任何需要记录下确切的哪些颜色是奇数个,只需 阅读全文
posted @ 2019-05-23 16:56 小蒟蒻yyb 阅读(950) 评论(0) 推荐(0)
摘要:【LOJ 6485】LJJ 学二项式定理(单位根反演) 题面 "LOJ" 题解 显然对于$a0,a1,a2,a3$分开算答案。 这里以$a0$为例 $$\begin{aligned} Ans&=\frac{1}{4}a_0\sum_{i=0}^n [4|i]{n\choose i}s^i\\ &=\ 阅读全文
posted @ 2019-05-09 21:24 小蒟蒻yyb 阅读(632) 评论(1) 推荐(1)
摘要:【LOJ 3097】[SNOI2019]通信(费用流) 题面 "LOJ" 题解 暴力就直接连$O(n^2)$条边。 然后分治/主席树优化连边就行了。 ~~抄zsy代码,zsy代码是真的短~~ cpp include include include using namespace std; defin 阅读全文
posted @ 2019-04-29 15:22 小蒟蒻yyb 阅读(749) 评论(0) 推荐(1)
摘要:【LOJ 3096】[SNOI2019]数论 题面 "LOJ" 题解 考虑枚举一个$A$,然后考虑有多少个合法的$B$。 首先这个数可以写成$a_i+kP$的形式,那么它模$Q$的值成环。 所以我们预处理每个环内有多少个合法的$b$,再把$b$按照访问顺序记录一下,那么对于每一个$a$就可以直接算答 阅读全文
posted @ 2019-04-29 10:08 小蒟蒻yyb 阅读(442) 评论(0) 推荐(0)
摘要:【LOJ 3095】[SNOI2019]字符串(后缀数组) 题面 "LOJ" 题解 首先画图看看如何比较两个串的大小,发现这个东西等价于求两个相邻的后缀的$LCP$。 一个做法是求出$SA$,然后就可以很容易的判断两个位置的大小了。 然而实际上相邻两个后缀的$LCP$转移可以很容易的从前一个得到,所 阅读全文
posted @ 2019-04-28 22:36 小蒟蒻yyb 阅读(589) 评论(0) 推荐(0)
摘要:【LOJ 2402】[THUPC2017]天天爱射击(整体二分) 题面 "LOJ" 题解 显然对于每块木板可以二分被打烂的时间。 那么直接上整体二分处理就行了。 cpp include include include include include include include using nam 阅读全文
posted @ 2019-04-20 09:46 小蒟蒻yyb 阅读(962) 评论(0) 推荐(0)
摘要:[ZJOI2019]线段树(线段树) 题面 "洛谷" 题解 首先问题等价于前面每次操作都可能进行修改或者不修改,求所有情况下有标记点的个数。 考虑依次修改操作会产生的影响,把线段树节点进行分类。 这个点和以及其父亲都和修改区间无交:显然这个点的标记不会被修改。 这个点和修改区间无交但父亲和修改区间有 阅读全文
posted @ 2019-04-02 20:42 小蒟蒻yyb 阅读(676) 评论(0) 推荐(1)
摘要:【LOJ6036】编码(2 sat) 题面 "LOJ" 题解 很显然的一个暴力: 枚举每个串中的 是什么,然后把和它有前缀关系的串全部给找出来,不合法的连边处理一下,那么直接跑$2 sat$就做完了。 现在的问题就在与不合法的数量可能会很多,所以需要优化这个连边的过程。 显然前缀关系和$Trie$树 阅读全文
posted @ 2019-03-01 22:08 小蒟蒻yyb 阅读(646) 评论(0) 推荐(0)
摘要:THUSC2017题解 题目都是在LOJ上交的。 chocolate "LOJ 2977巧克力" 这题看着就让人想起了百度之星复赛的$T5$,就是 "这题" 。 因为种类的个数很多,所以把每个种类随意$rand$一个$[1,k]$的权值做一个映射,这样子随机若干次的正确率就会很高。 接下来考虑如何计 阅读全文
posted @ 2019-01-18 23:02 小蒟蒻yyb 阅读(906) 评论(2) 推荐(0)
摘要:【LOJ 2542】[PKUWC2018]随机游走(min max容斥,动态规划) 题面 "LOJ" 题解 很明显,要求的东西可以很容易的进行$min max$容斥,那么转为求集合的$min$。 那么怎么求解每个集合的$min$呢。 显然以起点为根节点,如果点集中一个点在另外一个点的子树内,显然不需 阅读全文
posted @ 2019-01-06 21:16 小蒟蒻yyb 阅读(434) 评论(0) 推荐(0)