自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ixRic

天妒你我好韶华

原创 代码规范

文章目录前言参考博客代码风格概览缩进空白符空格 前言 众所周知,人类具有鸽的本质,而我仅仅是突然觉得打空格挺好看,就写了这个文章,所以此文章说出的话是极有可能被我放掉的。 另外,这个仅针对OI,其他的懒得写。 参考博客 主要是这两位神犇的神作_rqy’s Code Style for OI XX...

2019-11-11 21:30:43 62 3

原创 浅谈WQS二分、带权二分、凸优化与一类斜率优化DP

幕天题意一个简单的转化二维DP朴素斜率优化带权二分我们先看一道简单题题意分析代码进入正题题目回顾分析加权权与段数的关系单调性两个问题DP朴素DP斜率优化就题论题的分析方法一个普适的结论代码后记 除最后一张普适公式外,文中所有图像和公式均为原创,转载请附出处谢谢!!! 题意 [BZOJ 4518] ...

2019-11-05 22:53:27 229 2

原创 FFT(快速傅里叶变换)算法

文章目录功能前置技能多项式的系数表达式多项式的点值表达式复数复数的基本单位复数的运算复平面复根定义几个性质 功能 O(nlog⁡n)O(n\log n)O(nlogn)的时间求两个多项式的乘积。 一个nnn项的整式多项式一定可以表示成:f(x)=∑i=0n−1(aixi)f(x)=\sum\...

2019-02-19 10:56:07 2206 0

原创 二进制状态压缩枚举子集

对于二进制状态 SSS,可以用此方法不重不漏地枚举出子状态: for (int sub = S; sub; sub = (sub - 1) & S) { // sub 为 S 的子集 } 【证明】 由 sub=(sub−1)∩Ssub = (sub - 1) \cap Ssub=(su...

2020-05-30 10:15:40 21 0

原创 洛谷P1117 [NOI2016]优秀的拆分(巧妙的计数方法)

文章目录题目分析代码 题目 [NOI2016]优秀的拆分 分析 统计以SiS_iSi​开头的形如AA\text{AA}AA的子串的数量,存入L[i]L[i]L[i];统计以SiS_iSi​结尾的形如AA\text{AA}AA的子串,存入R[i]R[i]R[i]。于是把可以把它们拼起来,答案就是∑i...

2020-05-03 19:57:51 57 0

原创 NOI.AC170 数数(计数DP)

文章目录题目分析代码 题目 题目描述 求有多少对1∼n1∼n1∼n的排列(a,b)(a, b)(a,b)满足m≤∑i=1nmax⁡{ai,bi}m \leq \sum\limits_{i = 1}^{n} \max\{a_i,b_i\}m≤i=1∑n​max{ai​,bi​}。 两个方案(a,b)...

2020-03-28 15:31:38 49 0

原创 LOJ530 「LibreOJ β Round #5」最小倍数(二分)

文章目录题目分析代码 题目 「LibreOJ β Round #5」最小倍数 分析 令n!=p1a1p2a2⋯pkakn! = {p_1}^{a_1}{p_2}^{a_2} \cdots {p_k}^{a_k}n!=p1​a1​p2​a2​⋯pk​ak​,那么ai=∑j=1∞⌊npij⌋a_i =...

2020-03-28 11:32:25 41 0

原创 LOJ2161 「POI2011 R2 Day1」差值 Difference(细节DP)

文章目录题目分析代码 题目 「POI2011 R2 Day1」差值 Difference 分析 考虑枚举两个字符分别作为子序列的出现次数最多和最少的字符。一个性质是,这两个字符到底是不是次数最多或最少的字符并不重要,我们只需要统计最大差值,就能自动避免不符合要求的情况(因为不符合要求的情况一定比大...

2020-03-28 11:17:54 35 0

原创 C++类欧几里得算法

文章目录概述算法版题 (本文用绿色\color{green}绿色绿色标注一切函数,用紫色\color{purple}紫色紫色标注部分可以O(1)O(1)O(1)计算的常量式,便于观察)(不知道为什么加了颜色过后括号不能自动变大了,将就看吧= =) 概述 类欧几里得算法用于求形如f(a,b,c,n)...

2020-02-20 12:25:48 56 0

原创 [CTSC2006] 歌唱王国(概率生成函数 + KMP / 哈希)

文章目录题面分析代码 题面 洛谷P4548 [CTSC2006]歌唱王国 分析 先了解一下概率生成函数,对于一个随机变量aaa,它的概率生成函数是F(x)=∑i≥0(Pr(a=i)⋅xi)F(x)=\sum\limits_{i\geq0}(\text{Pr}(a=i)\cdot x^i)F(x)=...

2020-02-09 17:37:25 72 1

原创 [TopCoder 12984] TorusSailing(高斯消元主元法优化)

文章目录题面分析代码 题面 Vjudge TorusSailing 分析 首先得到一个DP方程dp[i][j]=12(dp[(i+1) mod N][j]+dp[i][(j+1) mod M])+1①dp[i][j]=\dfrac{1}{2}\left(dp...

2020-02-09 14:37:17 77 0

原创 [SDOI2012]走迷宫(Tarjan + 概率DP + 高斯消元)

文章目录题面分析代码 题面 洛谷P6030 [SDOI2012]走迷宫 分析 设dp[u]dp[u]dp[u]表示从uuu走到TTT的期望步数,VuV_uVu​表示uuu能到的点的集合,那么有dp[u]=∑v∈Vu1∣Vu∣⋅(dp[v]+1)=1∣Vu∣∑v∈vudp[v]+1\begin{al...

2020-02-09 12:58:31 44 0

原创 网络流24题

文章目录1. 餐巾计划问题题面分析代码2.[CTSC1999]家园题面分析代码3.航空路线问题题面 1. 餐巾计划问题 【洛谷1251】餐巾计划问题 题面 题目描述 一个餐厅在相继的 NNN 天里,每天需用的餐巾数不尽相同。假设第 iii 天需要 rir_iri​ 块餐巾(i=1,2,...,Ni...

2020-02-07 12:32:32 38 0

原创 斜率优化之凸包优化与李超线段树

文章目录前言例一 前言 本题的例题可能比较偏,但难度都是正常的(经典例题已经用传统斜率优化AC过了,不想再写)。 例一 Kalila and Dimna in the Logging Industry 不用看题,直接看转移方程即可:dp[i]=min⁡1≤j<i{dp[j]+bj⋅ai}d...

2019-12-28 09:59:41 135 1

原创 [CodeForces 697F][CodeForces 696D] Legen...(AC自动机+矩阵加速)

文章目录题目分析代码 题目 time limit per test: 6 seconds memory limit per test: 256 megabytes input: standard input output: standard output Description Barney wa...

2019-11-14 20:07:58 107 0

原创 C++高斯消元详解

文章目录前言直接来代码 前言 学了才发现这玩意贼简单虽然据说是复习。 直接来 高斯消元用于解一个线性方程组,就是: {a1,1⋅x1+a1,2⋅x2+⋯+a1,n⋅xn=a1,n+1a2,1⋅x1+a2,2⋅x2+⋯+a2,n⋅xn=a2,n+1⋯an,1⋅x1+an,2⋅x2+⋯+an,n⋅xn...

2019-11-13 08:51:45 84 1

原创 [洛谷P2540]【NOIP2015】斗地主增强版(DP+搜索)

文章目录题目分析代码 题目 P2540 斗地主增强版 分析 如果不出顺子,那么怎么出最优是可以DP解决的:dp[i][j][k][l]dp[i][j][k][l]dp[i][j][k][l]表示一副牌有iii个炸弹、jjj个三张、kkk个顺子、lll个单牌的最优出法。在这个状态定义下,原来的4i+...

2019-11-11 20:25:12 41 0

原创 [HNOI2019] 校园旅行(搜索+二分图性质)

文章目录题目分析代码 题目 注意数据范围是N≤5000N\leq 5000N≤5000!! 分析 考虑最plain的DP,dp[u][v]=1/0dp[u][v]=1/0dp[u][v]=1/0表示uuu到vvv是否有一条回文路径,如果dp[u][v]=1dp[u][v]=1dp[u][v]=1,...

2019-11-11 12:21:01 41 0

原创 【牛客CSP-S提高组赛前集训营5】B 十二桥问题(最短路+状压DP)

文章目录题目分析代码 题目 十二桥问题 分析 k≤12k\leq12k≤12,果断考虑状压。 将所有必须走的边的端点u,vu,vu,v视为关键点,为每个关键点跑Dijkstra,然后状压DP。 dp[S][i][0]dp[S][i][0]dp[S][i][0]表示走完集合为SSS的边,最后停在第i...

2019-11-08 22:30:46 44 0

原创 C++自动取模的模数类

一直想写,今天终于写出来了。 使用方法:ModNumber<MOD> k,可以定义一个模MOD意义下的变量k,它接下来的所有运算都自动模MOD,不需要再手写。 具体操作方法请自行探索: #define LL long long template<const int _MOD&g...

2019-11-06 19:02:09 100 0

原创 [BZOJ 3551][ONTAK2010]Peaks加强版(Kruskal重构树+主席树)

文章目录题目分析代码 题目 Description 在Bytemountains有NNN座山峰,每座山峰有他的高度hih_ihi​。有些山峰之间有双向道路相连,共MMM条路径,每条路径有一个困难值,这个值越大表示越难走,现在有QQQ组询问,每组询问询问从点vvv开始只经过困难值小于等于xxx的路径...

2019-11-02 12:04:58 39 0

原创 Kruskal重构树入门

Kruskal算法 众所周知,Kruskal是一种优秀的基于并查集的最小(最大)生成树算法。它的简要流程为: - 将所有边按边权排序; - 依次枚举所有边的两端点u和v,若它们不在一个联通块内,则将该边加入生成树的边集中,且将u、v合并于一个连通块中。 Kruskal重构树 定义 Kruskal重...

2019-11-02 11:24:59 61 0

原创 [CodeForces 141E]Clearing Up(Kruskal变式)

文章目录题目题目大意分析举个例子原图第一步第二步第三步代码 题目 Clearing Up 题目大意 给出一个nnn(1≤n≤1031\leq n\leq 10^31≤n≤103)个点mmm(1≤m≤1051\leq m\leq 10^51≤m≤105)条边的图,每条边有个颜色,要么是S,要么是M,...

2019-10-31 12:11:01 56 0

原创 [CodeForces 723F]st-Spanning Tree(分类讨论+贪心)

文章目录题目题目大意分析代码 题目 st-Spanning Tree 题目大意 给出一个nnn(2≤n≤200 0002\leq n\leq 200\ 0002≤n≤200 000)个点mmm(1≤m≤400 0001\leq m\leq 400\ 0001≤m≤40...

2019-10-31 11:36:56 45 0

原创 [GYM 101630C]CONNECTIONS(DFS树构造)

文章目录题目题目大意分析代码 题目 A-L题全 题目大意 给出一个有向强连通图nnn个点,mmm条边,要求留下2n2n2n(删除m−2nm-2nm−2n)条边使其仍然强 连通。保证一定存在解。(2n<m≤1052n<m\leq 10^52n<m≤105) 分析 边数和nnn有关的...

2019-10-29 17:49:00 54 0

原创 [CodeForces 700D]Break Up(双连通分量+枚举)

文章目录题目题目大意分析代码 题目 Description Again, there are hard times in Berland! Many towns have such tensions that even civil war is possible. There are nnn to...

2019-10-28 18:29:48 59 0

原创 C++控制台打飞机小游戏

文章目录前言介绍 前言 我终于决定还是把这个放出来。 这是我在纪中颓废的时候写的。 介绍 先来视频: 具体信息主界面上都有写。 按空格暂停,建议暂停后再升级属性。 记录最高分的文件进行了加密。 有boss。 挺好玩的。 可能有bug,不想改了,整体体验不错就行了。 更多控制...

2019-10-24 18:03:46 10057 29

原创 [POJ2942]Knights of the Round Table(点双连通分量+染色找奇环)

文章目录题目题目大意分析 题目 Knights of the Round Table 题目大意 有NNN个骑士,给出MMM对仇恨关系,若iii与jjj有仇恨,他们就不能在圆桌会议上坐相邻的位置。请你求出有多少个骑士无法参加任何一个圆桌会议(例如但不仅限于,某个骑士与其他所有骑士有仇恨关系,...

2019-10-24 16:15:36 84 0

原创 [NOI.AC]【CSP2019模拟 Day 2】c(魔鬼暴搜+状态压缩+打表)

俄罗斯方块是一个四连通的,由 1×11×1 的小正方形构成的方块,并且可以被 3×33×3 的正方形装下,比如: ... @@@ @@@ .@@ ... @@@ @.@ @.@ .@. @@@ @.. @@@ 而这些就是不合法的: @@. @.@ .@@. ... .@. @@@@ ...

2019-10-23 10:48:48 2802 2

原创 Dynamic Tree Connectivity(LCT)

文章目录题目分析题目 题目 Dynamic Tree Connectivity 分析 动态树(LCT)初探 题目 #include<cstdio> #include<vector> #include<algorithm> using namespace std;...

2019-10-11 21:17:40 60 0

原创 Query on a tree(LCT版)

文章目录题目分析代码 题目 Query on a tree 分析 动态树(LCT)初探 代码 #include<cstdio> #include<vector> #include<algorithm> using namespace std; ...

2019-10-11 21:15:34 53 0

原创 动态树(LCT)初探

文章目录前置技能那么直接开始吧 前置技能 Splay基本操作不是前置技能嘿嘿嘿;(由于某些原因,Splay的文章可能会永远咕掉,也可能明天就出现,,,逃 ─=≡Σ(((つ•̀ω•́)つ) 指针是前置技能,这时候又要祭出这篇文章了哈哈哈哈哈哈 那么直接开始吧 动态树(Link ...

2019-10-11 21:12:00 187 0

原创 [CodeForces 280D] k-Maximum Subsequence Sum(毒瘤线段树)

分析 对于每个询问,执行k次如下操作:求[l,r]的最大子段和,加进ans,然后把该字段所有元素变成它的相反数。当然,这个过程中如果[l,r]的最大子段和出现了负数,直接退出。输出答案。 直观上这个做法很好理解,相当于很多次求前缀和的过程。据说可以用网络流证。

2019-10-09 19:09:45 82 0

原创 [BZOJ3532] Lis(最大流拆点+退流)

文章目录题目分析代码 题目 Lis 分析 先做一个最长上升子序列的DP,然后按照转移的父子顺序连边,要拆点,具体来说: 所有iii向i′(i+N)i&#x27;(i+N)i′(i+N)连容量为BiB_iBi​的边; 若dp[i]=1dp[i]=1dp[i]=1,SSS向连iii连容量为∞...

2019-08-27 11:22:01 75 0

原创 [HDU6598] Harmonious Army(网络流方程建图)

文章目录题目题意分析代码 题目 Harmonious Army 题意 你有n(n≤500)n(n\leq 500)n(n≤500)个士兵,每个士兵需要安排一个职位(法师或战士),另给定mmm对士兵,对于其中的一对ui,viu_i,v_iui​,vi​,如果都选战士,战队的攻击力会提高aia_iai...

2019-08-27 10:34:38 76 0

原创 BZOJ3993 星际战争

3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战。在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进攻X军团的阵地,其中第i个巨型机器人的装甲值为Ai。当一个巨型机器人的装甲值减少到0或者以下时,这个巨型机器人就被摧毁了。X军团有M个激光武器,其中第i个激光武器每秒可以削减一个巨型机器...

2019-08-23 16:44:11 75 0

原创 旋转子段

ZYL有N张牌编号分别为1,2,......,N。他把这N张牌打乱排成一排,然后他要做一次旋转使得旋转后固定点尽可能多。如果第i个位置的牌的编号为i,我们就称之为固定点。旋转可以被认为是将其中的一个子段旋转180度,这意味着子段的第一张牌和最后一张牌交换位置,以及第二张牌和倒数第二张牌交换位置,等...

2019-08-21 10:44:26 70 0

原创 【集训队互测 2012】Attack

文章目录题目分析代码 题目 Description chnlich非常喜欢玩三国志这款游戏,并喜欢用一些策略出奇制胜。现在,他要开始征服世界的旅途了。他的敌人有NNN座城市和NNN个太守,NNN个城市可以看作在二维平面上的NNN个点。NNN座城市的标号为0,1,2,⋯&ThinSpace;...

2019-08-21 10:19:09 59 0

原创 优美序列

Lxy养了N头奶牛,他把N头奶牛用1..N编号,第i头奶牛编号为i。为了让奶牛多产奶,每天早上他都会让奶牛们排成- -排做早操。奶牛们是随机排列的。在奶牛排列中,如果-段区间[L, R]中的数从小到大排列后是连续的,他认为这段区间是优美的。比如奶牛排列为: (3, 1, 7, 5, 6, 4, 2...

2019-08-05 22:05:12 978 0

原创 矩阵游戏

LZK发明一个矩阵游戏,大家一起来玩玩吧,有一个N行M列的矩阵。第一行的数字是1,2, ..M,第二行的数字是M+1, M+2-2*M,以此类推,第N行的数字是 (N-1)*M+1, (N-1) *M+2--N*M。例如,N=3,M=4的矩阵是这样的:…

2019-08-05 21:45:47 1433 0

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