自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

DSL_HN_2002的博客

一个需要很努力的人,已退役,勿念

  • 博客(114)
  • 收藏
  • 关注

原创 「学习笔记」Min25筛

前言Min25Min25Min25筛是一种能够用于求解积性函数f(x)f(x)f(x)的前缀和的方法,其前提条件是∑x≤,nx是质数f(x)\sum_{x\leq,nx是质数} f(x)∑x≤,nx是质数​f(x)可以用∑x≤,nx是质数h(x)\sum_{x\leq,nx是质数} h(x)∑x≤,nx是质数​h(x)简单表示。其中h(x)h(x)h(x)为完全积性函数。过程首先,对于每一个...

2018-12-10 09:44:56 976

原创 「学习笔记」回文树/回文自动机(Palindromic Tree)

引入有时候题目要求一些这样的问题 1. 求以串s" role="presentation">sss 本质不同的回文串个数(即长度不同或长度相同且至少有一个字符不相同的字符串) 2. 求以位置i" role="presentation">iii结尾的回文串个数。这时候使用Manacher显然有点力不从心,我们可以使用一种比较新颖的字符串处理工具回文树(Palindromic Tree

2018-01-27 16:55:13 1201 1

原创 「学习笔记」ISAP求最大流

ISAP学习笔记ISAP是OI中求最大流的常用方法之一。相对于Dinic,ISAP的速度提升了很多,但编码复杂度也上升了不少。约定采用邻接表存储图,对于每条弧,增加一条容量为0的逆向边。 d数组代表每个点到终点的距离。引入求解最大流有一种基础方法,每次在残量网络中dfs找到任意路径增广,直到不存在这样的道路为止。这就是最短路增广算法。但是这样的方法效率太低。 所以我

2017-12-28 21:57:53 555 1

原创 退役时的做题计划2

吐槽:这篇写了几个月的东西终于发出来了(其实是因为太懒了咕了好多题到现在才凑满数量。。。「Codeforces1257G」Divisor Set-Dilworth定理+分治FFT2020-02-09有一个常见的思路是把每个约数看作高维空间上的一个点。每个数向它的约数连边。题目转化为了最长反链,等价于最小链覆盖。不难发现,这张图以质数的指数和分层,只需要在相邻层连边即可。这样最小链覆盖取决与最大层的大小,即指数和为某个数的约数个数(其实这个数是⌈n2⌉\lceil \frac{n}{2} \rcei

2020-06-07 22:19:42 741

原创 「JOISC 2019 Day3」穿越时空 Bitaro-线段树

Description在河狸国,一条路上有 NNN 座城市,依次编为 1…N1\ldots N1…N 号;连接城市 iii 和城市 i+1i+1i+1 的那段路被称为 iii 号路。在河狸国,一天有 10910^9109 秒,依次称为时刻 0…109−10\ldots 10^9-10…109−1。从城市 iii 沿路到达与之相邻的城市——城市 i−1i-1i−1 或城市 i+1i+1i+1 需要...

2020-05-06 22:58:39 694

原创 「LOJ2474」「2018 集训队互测」北校门外的未来-笛卡尔树及其扩展+LCT

Description链接Solution对于一棵树 TTT,定义其的笛卡尔树 C(T)C(T)C(T) 满足:堆性质,即祖先的权值(本题中为标号)一定大于子孙的权值。搜索树性质,即任意子树对应的节点在 TTT 中一定联通。感性理解的话,C(T)C(T)C(T)是把选重心改为选最大编号的点,构建出来的点分树。先不考虑修改。对于 TTT 构造出 C(T)C(T)C(T) 可以发现:...

2020-04-19 14:30:47 619

原创 「CERC2017」Embedding Enumeration-DP

Description给定一个 nnn 个点的树。你需要将它放到一个 2×n2 \times n2×n 的网格里,每个格子至多放一个点,在树上相邻的点在网格中也必须相邻,并且 111 号点必须放在左上角。求方案数对 109+710^9+7109+7 取模的结果。n≤105n \leq 10^5n≤105Solution设fuf_ufu​表示把uuu放在左上角的方案数。uuu是叶子。显...

2020-04-19 14:24:49 497

原创 「LOJ2462」「2018 集训队互测 Day 1」完美的集合

Description链接Solution首先对于每一种选取KKK个集合的方案,合法的测试点一定是个联通块。所以可以容斥求出方案数,即uuu可行的减去faufa_ufau​与uuu都可行的。剩下的是一个组合数取模的问题,即求∏i∈[1,n],imod  5≠0i×∏i∈[1,⌊n5⌋],imod &am...

2020-04-18 17:35:17 838

原创 「CTSC2010」产品销售-线段树+模拟费用流

Description有 nnn 天,每一天商店可以进口最多 UiU_iUi​ 件商品,价格为 PiP_iPi​ ,每一天也有一定的订货量 DiD_iDi​ 。一件商品进口之后,如果没有立即卖出,每在仓库放置一天要付出代价 MiM_iMi​ 。如果第 iii 天某位顾客要买的商品缺了 kkk 件,那么要付出 k×Cik \times C_ik×Ci​ 的代价延期一天购买。问最小总耗费。n≤1...

2020-01-17 10:13:08 315

原创 「Codeforces1250K」Projectors-网络流

Description有nnn堂讲课,mmm次研讨会,xxx个高清投影仪和yyy个普通投影仪。每堂讲课必须使用一个高清投影仪,而研讨会可以使用普通或高清投影仪。第iii堂讲课时间在[ai,bi)[a_i,b_i)[ai​,bi​),第iii次研讨会在时间在[pi,qi)[p_i,q_i)[pi​,qi​),一个投影仪一次只能用在一个地方,且在使用完毕后才会归还。构造为每节讲课/研讨会分配一...

2019-12-16 22:22:52 245

原创 「CSP2019」树上的数-贪心+并查集

Description给定一棵树和每个节点上的初始数字,删除一条边的效果是交换被这条边连接的两个节点上的数字交换。设pip_ipi​表示数字iii在哪个节点,要求合理安排删除n−1n-1n−1条边的顺序,使得排列ppp字典序最小,n≤2000n \leq 2000n≤2000Solution考虑把一个数字从一个节点运送到另一个节点的过程。可以发现,限制总共有333种:对于起点,选择...

2019-11-22 23:23:32 380

原创 CSP2019游记

Day0上午晚上复习了一波板子。下午基本在划水。晚上没睡好,凌晨3:00醒来后就基本没怎么睡着。Day1本来一位今年Day1跟去年Day1一样是手速场。开考写完T1。然后T2写的有点小锅浪费了一些时间。然后开始做T3,想了很久发现自己只会101010分。当时以为自己快退役了xd出去上厕所冷静一下,回来的时候发现鸡老师和猫贼都好像没动T3,心理平静了不少。于是开始想部分分,然后到下考...

2019-11-19 12:15:11 535

原创 Comet OJ # 12

A,B,C咕了DDescription求满足下列条件的数对(x,y)(x,y)(x,y)的对数x⊕y=nx \oplus y = nx⊕y=n;∣x−y∣≤m|x - y| \leq m∣x−y∣≤m;0≤x≤a,0≤y≤b0 \leq x \leq a, 0 \leq y \leq b0≤x≤a,0≤y≤b。a,b≤1018a,b \leq 10^{18}a,b≤1018So...

2019-11-10 08:37:31 148

原创 Contest #13 题解

A签到题,不讲了。B按照题意模拟即可。C可以发现nm≤106,nq≤107nm \leq 10^6,nq \leq 10^7nm≤106,nq≤107,所以可以直接用并查集维护连通性。由于每个格子最多被填一次1,所以可以每次找出会被填1的格子然后向周围是1的格子连边。对于每行维护一个并查集即可,每个格子指向从它开始的第一个是0的格子。codeD∑i=0⌊n2⌋aibn−2i(n...

2019-10-26 11:52:48 236

原创 「Codeforces516D」Drazil and Morning Exercise

Description给出一棵 nnn 个点的树,给出 n−1n-1n−1 条 xxx 和 yyy 之间的边。每条边有一个长度vvv,询问qqq次,每次询问给出一个LLL,请选择一个符合要求的最大联通块,要求该联通块中所有点到树上离它最远的点的距离的最大值与最小值之差小于等于LLL,输出联通块的最大大小。n≤100000,q≤50n \leq 100000, q \leq 50n≤10000...

2019-10-21 21:49:34 162

原创 Comet OJ - 模拟赛测试 Day1&Day2

题目地址:day1 day2Day1A实际上是把某一个数拆成若干个数之和,使得这若干个数乘积最大。显然尽量拆成333,如果mod  3=1\mod 3=1mod3=1则拆两个222,mod  3=2\mod3=2mod3=2则拆一个222。B分类讨论+贪心贴个代码#include <bits/stdc++.h>using namespace std;inline i...

2019-10-04 20:08:15 191

原创 「Codeforces1109F」Sasha and Algorithm of Silence's Sounds-lct+线段树

Description给出一个 n×mn \times mn×m 的网格图,每个格子上有一个数,形成一个 n×mn \times mn×m 阶排列。求有多少个区间[l,r][l,r][l,r],使得这个区间内的所有数所在的格子网格图上构成一棵树。n×m≤200000n\times m \leq 200000n×m≤200000Solution考虑把树的限制拆为没有环+++连通块个数为11...

2019-09-22 22:31:46 157

原创 「BZOJ3514」Codechef MARCH14 GERALD07加强版-lct+二维数点

Descriptionnnn个点mmm条边的无向图,询问保留图中编号在[l,r][l,r][l,r]的边的时候图中的联通块个数。n,m≤200000n,m \leq 200000n,m≤200000Solution考虑常见套路:联通块数等于点数−-−树边数。从小到大加边,维护最大生成树。求出preipre_iprei​表示iii这条边需要删除哪条边,prei=0pre_i=0prei​=...

2019-09-22 18:58:46 192

原创 「BZOJ5312」冒险-线段树+势能分析

Description一个长度为 nnn 的序列 ai{a_i}ai​,支持单点修改,区间与/或一个数,求区间最大值。n,m,ai≤200000n,m,a_i \leq 200000n,m,ai​≤200000Solution设Φ(s)\Phi(s)Φ(s)为一个线段树节点的势能。Φ(s)\Phi(s)Φ(s)的值为其左右儿子的Φ\PhiΦ之和加上这个点所代表区间的数在多少个二进制位上不全...

2019-09-22 14:33:19 243

原创 「BZOJ3145」Str-SAM

Description给定串S,TS,TS,T。求TTT在SSS中出现的最长子串。定义一个串BBB匹配与AAA当且仅当∣A∣=∣B∣|A|=|B|∣A∣=∣B∣且至多存在一个iii满足Ai≠BiA_i \neq B_iAi​​=Bi​。Solution考虑枚举题目中的iii,即模糊匹配位置。设它在TTT串中的位置为iii,则要找到在SSS串中的位置jjj使得lcp(T[i+1,m],S...

2019-09-18 20:01:57 225

原创 「BZOJ3946」无聊的游戏-线段树+哈希

Description你有nnn个串,有两种操作给[l,r][l,r][l,r]的串在前面拼上新串sss。询问lcp(sl,sl+1,sl+2,...,sr)lcp(s_l,s_{l+1},s_{l+2},...,s_{r})lcp(sl​,sl+1​,sl+2​,...,sr​)n≤50000,∑∣S∣≤600000n\leq 50000, \sum |S| \leq 600000n...

2019-09-17 17:33:47 252

原创 退役前的做题计划1.0

马上就要退役了,随手记录一下吧。「CEOI2008」order如果没有租,那么就是经典的最小割模型。考虑证明处理租的情况,在没有租的情况中,一件产品会向它需要的产品连InfInfInf边,其实这就相当于租,把这条边的权值改完租的价格即可。...

2019-07-23 07:52:05 344

原创 「LOJ6032」「雅礼集训 2017 Day2」水箱-DP+线段树

Description给出一个长度为 nnn 宽度为 111,高度无限的水箱,有 n−1n - 1n−1 个挡板将其分为 nnn 个 1 - 1 的小格,然后向每个小格中注水,水如果超过挡板就会溢出到挡板的另一边,这里的水是满足物理定律的(在无挡板阻拦的情况下会向低处流),现在有 mmm 个条件 (i,y,k)(i, y, k)(i,y,k),表示从左到右数的第 iii 个格子中,在高度为 y+...

2019-07-14 22:34:36 250

原创 Comet OJ - Contest #3 简要题解

A小水题。直接枚举后排序即可。#include <bits/stdc++.h>using namespace std;inline int gi(){ char c = getchar(); while(c < '0' || c > '9') c = getchar(); int sum = 0; while('0' <= c &&amp...

2019-05-13 15:43:43 467 7

原创 「Codeforces113D」Museum-高斯消元

Description有一个nnn个点mmm条边的无向图,两个人分别从x,yx,yx,y出发,每个人每分钟有pip_ipi​的概率不动, 有1−pi1−p_i1−pi​的概率走到随机一个相邻的点。当他们在同一时刻选择前往同一个房间, 他们就会在那个房间相遇并停止。求在每个点相遇的概率。n≤22n \leq 22n≤22Solution这道题有两种做法。第一种做法,枚举终点,然后高斯消...

2019-05-11 16:45:54 357

原创 「ARC062F」Painting Graphs with AtCoDeer-Tarjan+Polya定理

Description给定一张NNN个点MMM条边的无向图,每条边要染一个编号在111到$K$的颜色。你可以对一张染色了的图进行若干次操作,每次操作形如,在图中选择一个简单环(即不经过相同点的环),并且将其颜色逆(顺)时针旋转一个单位。两种染色方案被认为是本质相同的,当且仅当其中一种染色后的图经过若干次操作后可以变成另一种染色后的图。问有多少本质不同的染色方案,输出对109+710^9+...

2019-05-11 10:38:20 337

原创 「Luogu5346」「XR-1」柯南家族-替罪羊树+主席树

Description这是链接Solution这里写的是 @租酥雨 在考场的写法。显然,聪明程度的比较具有传递性。所以如果我们可以快速把每个人的聪明程度排序,然后就可以轻易的回答询问了。考虑按找某种顺序往已经排好的序列添加一个数,满足它的父亲已经被比较了(比如直接按输入顺序)。比较显然的一种方法是用平衡树维护这个序列,每次往平衡树中添加一个点。但是把一个点插入平衡树需要O(logn)O...

2019-05-05 20:22:38 493

原创 「BZOJ2693」jzptab-莫比乌斯反演

2019.5.2「BZOJ2693」jzptab-莫比乌斯反演Description求∑i=1N∑j=1Mlcm(i,j)\sum_{i=1}^N\sum_{j=1}^M lcm(i,j)i=1∑N​j=1∑M​lcm(i,j)n,m≤107n,m \leq 10^7n,m≤107,多组数据。Solution设f(n)=∑i=1N∑j=1M[gcd(i,j)=1]ijf(n) = ...

2019-05-02 17:04:50 342

原创 「SDOI2018」战略游戏-圆方树

Description有一张无向图,每次给定一个集合SSS,求有多少个点满足删除这个点后,SSS中至少有两个点不连通。n≤105n \leq 10^5n≤105,m,∑∣S∣≤2×105m,\sum |S| \leq 2\times 10^5m,∑∣S∣≤2×105Solution考虑所求就是SSS在圆方树上虚树的圆点数-∣S∣|S|∣S∣。但实际并不需要把虚树求出来,考虑把一个圆点的权...

2019-04-25 08:38:18 159

原创 「APIO2018」铁人两项-圆方树

Description给定一张无向图,询问存在多少三元组(s,c,f)(s,c,f)(s,c,f)(s,c,fs,c,fs,c,f各不相同)满足存在一条从sss到ccc,ccc到fff的简单路径。n≤105,m≤105n \leq 10^5, m \leq 10^5n≤105,m≤105Solution考虑建立圆方树。固定s,fs,fs,f,满足条件的ccc一定存在sss到fff路径上方...

2019-04-24 17:33:20 154

原创 「Codeforces487E」Tourists-圆方树

Description给定一张简单无向连通图,要求支持两种操作:修改一个点的点权。询问两点之间所有简单路径上点权的最小值。n,m,q≤105n,m,q \leq 10^5n,m,q≤105Solution先不考虑修改。圆方树有一个性质,那就是(u,v)(u,v)(u,v)路径上的方点所代表的点双并为(u,v)(u,v)(u,v)间的简单路径并。所以只需要把方点权值设为其...

2019-04-24 17:31:51 155

原创 「BZOJ3711」「PA2014」Druzyny-分治

Description从前一个和谐的班级所有人都是搞 OIOIOI 的。有 nnn 个是男生,有 000 个是女生。现在所有男生排成一行,老师想把他们分成若干个小组写动态仙人掌,每个小组包含连续的一段人,每个人属于且仅属于一个小组。第 iii 个人所在的小组人数应该在区间 [ci,di][c_i,d_i][ci​,di​] 内。老师想知道这个班级里最多产生多少个小组,以及有多少种方案能达到...

2019-04-19 15:35:18 269 1

原创 「ZJOI2019」Minimax搜索-动态DP

Description链接Solution考虑差分,求出w(S)≤kw(S)\leq kw(S)≤k的集合数。显然,www的值域是连续的。所以www只会变成w+1w+1w+1或w−1w-1w−1。显然,w(S)≤1w(S)\leq 1w(S)≤1的集合数为2m−12^{m-1}2m−1,所以接下来讨论的时候默认www节点不会修改。可以发现w(s)≤kw(s)\leq kw(s)≤k等...

2019-04-17 20:15:32 313

原创 「ZJOI2019」打麻将-DP

Description链接Solution考虑如何判断一个牌的集合是胡的。首先第一种牌型只需记录有多少中牌出现次数超过222。对于第二种牌型,可以用DP解决。设f0/1,i,j,kf_{0/1,i,j,k}f0/1,i,j,k​已经考虑了前iii种大小,表示之前是否预留了对子,之前预留了jjj对i−1,ii-1,ii−1,i,以及kkk个iii用于凑顺子(大小相邻的麻将牌)。每次...

2019-04-16 16:57:01 229

原创 「ZJOI2019」线段树-线段树

Description这是链接Solution这题可以看做每次有12\frac {1} {2}21​执行1操作,问tagtagtag数组之和的期望乘2p2^p2p(ppp是1操作的次数)。根据期望的线性性,单独计算出每一个节点的tagtagtag为111的期望fif_ifi​,顺便计gig_igi​表示iii到根的路径有tag=1tag=1tag=1的概率。将[l,r][l,r][l,r]...

2019-04-15 17:13:20 221

原创 「HNOI2019」JOJO-主席树+kmp自动机

Description两种操作1 x c 在当前字符串末尾添加xxx个ccc字符。2 x 把当前字符串变为第xxx次操作之后的状态。每次操作后,输出当前字符串的nextnextnext数组只和。操作数≤105\leq 10^5≤105,c≤104c \leq 10^4c≤104。Solution2操作显然可以用离线建树解决。考虑如果一段前缀匹配一段后缀,那么除了第一段的字符,其...

2019-04-15 14:55:07 315

原创 「HNOI2019」校园旅行-DP

Description给定nnn个点,mmm条边的图。每个点有0/10/10/1的标号,有QQQ个询问,每次询问点对(u,v)(u,v)(u,v)间是否一条路径(不一定是简单路径),满足路径经过的点的标号所形成的串是回文串。n≤5000,m≤5000000n \leq 5000, m \leq 5000000n≤5000,m≤5000000Solution设fi,jf_{i,j}fi,j​...

2019-04-09 20:38:19 273

原创 「HDU3629」Convex-计算几何

Description链接Solution考虑平面相交线段对数等于平面凸四边形数(相交线段相当于对角线)。平面凸四边形个数转化为总数减去凹四边形数。凹四边形数相当于一个三角形中包含了一个点。枚举被包含的点,计算包含它的三角形比较麻烦,统计不包含它的三角形。极角排序后,若两个向量i,ji,ji,j之间的夹角小于π\piπ,那么i+1&amp;nbsp;ji+1~ji+1&amp;nbsp;j的向量任意...

2019-01-02 22:56:48 201

原创 「LOJ6078」「2017 山东一轮集训 Day7」重排-DP

Description链接Solution先假设没有自环。直接按拓扑序进行DP。设fif_ifi​表式点iii到ttt的期望代价。把出边与出点的fff两两匹配,形成k2k^2k2个二元组。然后考虑求出匹配方案的最小值≥\ge≥当前二元组的概率。算概率等同于算方案数。Rabbit Number即可。如果有自环,发现题目要求保存666位小数,可以把当前的fuf_ufu​丢进去迭代计算,直到...

2019-01-02 13:24:13 618 1

原创 「LOJ6072」「2017 山东一轮集训 Day5」苹果树-矩阵树定理

Description链接Solution考虑把问题转化为两问。第一问为对于k∈[1,n]k \in [1,n]k∈[1,n],选出kkk个权值和≤lim\le lim≤lim的水果的方案数。第二问为把这kkk个水果钦定为真香的生成树个数。把水果分为真香,香但不真香,不香的水果。其中第一类水果向一三类水果连边,第二类水果向第三类水果连边,第三类水果任意连边,矩阵树定理统计即可。注意求出的...

2019-01-02 13:14:38 491

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除