- 博客(123)
- 收藏
- 关注
转载 Outsider(HNOI2019)
这不是一篇退役记,因为NOIP2018之后就写完了。Day-1清明时节雨纷纷。最后的时光,应该是怎么样的呢?是像水滴一样,悄无声息地从指缝中溜走还是如火焰一般,燃烧着最后的留恋?晚上一直在关注WF。虽然它和过去的、现在的、未来的我好像没有什么交集,但我仍看得心潮澎湃。Day0上午补觉。中午,13个人,最后的午餐。一如几个月前,橘子洲头的豪情满怀。下午晚上敲代码板子...
2019-04-05 00:04:00
281
转载 洛谷P4689 [Ynoi2016]这是我自己的发明(莫队,树的dfn序,map,容斥原理)
洛谷题目传送门具体思路看别的题解吧。这里只提两个可能对常数和代码长度有优化的处理方法。I把一个询问拆成\(9\)个甚至\(16\)个莫队询问实在是有点珂怕。发现询问的一边要么是一个区间,要么是\([1,n]\)挖去一个区间。记\(pre_i=f_{[1,i],[1,n]}\),这个可以一遍预处理求出来。简单容斥一下:\[f_{[l,r],[1,L)\cup(R,n]}=f_...
2019-04-03 00:11:00
308
转载 Ubuntu下编写终端界面交互式C++小程序的一些Trick(小技巧,gnome-terminal)
类getch()功能的实现I只要在Windows下用过C/C++就会很熟悉conio.h库中的一个函数getch(),它可以绕过终端输入缓冲区直接从键盘读取一个字符,并且不在界面上显示。但如果想直接在Linux环境下用是不行的,因为没有conio.h库的支持。博主翻了网上的一些资料,在这里给出一个比较简明的实现,使用起来与Windows下没什么差异。#include<cs...
2019-03-31 23:10:00
740
转载 贪心相关/模拟网络流、费用流细节梳理/模板(贪心,模拟费用流,栈)
去不了WC的蒟蒻只能orz laofu qaq参考%YCB%题单【Done】牛客挑战赛7F Masha与老鼠【Todo】洛谷P2514 HAOI2010工厂选址【Done】洛谷P3826 NOI2017蔬菜【Todo】洛谷AT3687 Farm Village【Todo】洛谷CF280D k-Maximum Subsequence Sum【Todo】BZOJ2034 最...
2019-03-26 15:47:00
686
转载 洛谷P3602 Koishi Loves Segments(贪心,multiset)
洛谷题目传送门贪心小水题。把线段按左端点从小到大排序,限制点也是从小到大排序,然后一起扫一遍。对于每一个限制点实时维护覆盖它的所有线段,如果超过限制,则贪心地把右端点最大的线段永远删去,不计入答案。显然这样做对后面的决策更有利。以右端点为键值,需要资瓷动态插入,删除最小值、最大值,multiset就行了。代码很短,常数应该比较大,但不知为何暂时混了个rk1。#include&...
2019-03-21 19:08:00
162
转载 洛谷CF809C Find a car(数位DP)
洛谷题目传送门通过瞪眼法发现,\(a_{i,j}=(i-1)\text{ xor }(j-1)+1\)。二维差分一下,我们只要能求\(\sum\limits_{i=0}^x\sum\limits_{j=0}^y[i\text{ xor }j\le k]\)就好了。比较套路的数位DP。从高位往低位做,设\(f[t][0/1][0/1][0/1]\)表示到第\(t\)位,\(i,j,...
2019-03-17 17:17:00
212
转载 洛谷P5069 [Ynoi2015]纵使日薄西山(树状数组,set)
洛谷题目传送门一血祭向dllxl致敬!算是YNOI中比较清新的吧,毕竟代码只有1.25k。首先我们对着题意模拟,寻找一些思路。每次选了一个最大的数后,它和它周围两个数都要减一。这样无论如何,我们都选不到旁边那两个数,只有第一次选的那个数会对答案产生它的大小的贡献。于是就可以写出一个\(O(nm\log n)\)的暴力用来对拍了#include<bits/stdc++....
2019-03-08 13:39:00
220
转载 洛谷AT2046 Namori(思维,基环树,树形DP)
洛谷题目传送门神仙思维题还是要写点东西才好。树每次操作把相邻且同色的点反色,直接这样思考会发现状态有很强的后效性,没办法考虑转移。因为树是二分图,所以我们转化模型:在树的奇数层的所有点上都有一枚棋子,每次可以将棋子移向相邻的空位,目标状态是树的偶数层的所有点上都有棋子。这样的互换总次数有没有一个下界呢?我们求出\(a_i\)表示点\(i\)子树中棋子数量与空位数量之差(可以是...
2019-03-04 14:41:00
152
转载 无聊的时候氵一些小套路
快一个月不更博的时候氵一篇博客分治https://www.cnblogs.com/flashhu/p/9874012.html图论边数小于点数的无向连通图是一棵树nmdwsmduliuyyb所有简单环都是奇环的图是仙人掌。竞赛图缩点之后是一条链。(边权都是\(1\))任意两点间最大流不超过\(x\)的图可以划分为不超过\(x\)个生成森林。看到平面图(包括网格图)的时候想...
2019-03-01 18:49:00
159
转载 洛谷AT2342 Train Service Planning(思维,动态规划,珂朵莉树)
洛谷题目传送门神仙思维题还是要写点东西才好。建立数学模型这种很抽象的东西没有式子描述一下显然是下不了手的。因为任何位置都以\(k\)为周期,所以我们只用关心一个周期,也就是以下数都在膜\(k\)意义下。设\(a_i\)表示\(i\)号区间长度;对于上行列车(\(0\rightarrow n\))设\(p_0\)表示出发时刻,\(p_i(i\ge1)\)表示在\(i\)站停靠时...
2019-02-11 12:08:00
161
转载 图论杂项细节梳理&模板(虚树,圆方树,仙人掌,欧拉路径,还有。。。)
orzYCB虚树%自为风月马前卒巨佬%用于优化一类树形DP问题。当状态转移只和树中的某些关键点有关的时候,我们把这些点和它们两两之间的LCA弄出来,以点的祖孙关系连成一棵新的树,这就是虚树。容易证明,如果关键点数量为\(m\),则虚树点数不超过\(2m\)。虚树的构建dfs原树,对点进行dfn标号,并将关键点按dfn从小到大排序。搞个栈,栈内的点满足:都在从栈顶的点到原树...
2019-02-02 16:16:00
288
转载 各种反演细节梳理&模板
炫酷反演魔术课件byVFKstO FDF Orz(证明全有%%%)莫比乌斯反演\(F(n)=\sum\limits_{d|n}f(d)\Rightarrow f(n)=\sum\limits_{d|n}\mu(\frac n d)F(d)\)\(F(n)=\sum\limits_{n|d}f(d)\Rightarrow f(n)=\sum\limits_{n|d}\mu(\fra...
2019-01-26 16:46:00
256
转载 珂朵莉树模板(珂朵莉树)
orz yzhang学会了一个叫做mutable的关键字关键操作:Split,将指定位置的区间拆开洛谷CF896C Willem, Chtholly and Seniorious#include<bits/stdc++.h>#define LL long long#define I inline#define R register intusing names...
2019-01-19 16:48:00
158
转载 洛谷CF1071E Rain Protection(计算几何,闵可夫斯基和,凸包,二分答案)
洛谷题目传送门CF题目传送门对于这题,我无力吐槽。虽然式子还是不难想,做法也随便口胡,但是一些鬼畜边界情况就是判不对。首先显然二分答案。对于每一个雨滴,它出现的时刻我们的绳子必须落在它上面。把绳子的上下端点用二元组\((a,b)\)表示,因为三个点\((a,0)(x_i,y_i)(b,h)\)共线,我们可以推出\[(b-a,h)×(x_i-a,y_i)=0\\(h-y_i)a...
2019-01-16 21:51:00
261
转载 洛谷P3222 [HNOI2012]射箭(计算几何,半平面交,双端队列)
洛谷题目传送门设抛物线方程为\(y=ax^2+bx(a<0,b>0)\),我们想要求出一组\(a,b\)使得它尽可能满足更多的要求。这个显然可以二分答案。如何check当前的\(mid\)是否合法呢?每一个限制条件形如\(y_{i_1}\le ax_i^2+bx_i\le y_{i_2}\),也就是\(\frac{y_{i_1}}{x_i}\le x_ia+b\le \f...
2019-01-15 00:17:00
172
转载 计算几何细节梳理&模板
点击%XZY巨佬向量的板子#include<bits/stdc++.h>#define I inlineusing namespace std;typedef double DB;struct Vec{ DB x,y; I Vec(){x=y=0;} I Vec(DB a){x=a;y=0;} I Vec(DB a,DB b){x=...
2019-01-12 09:23:00
208
转载 洛谷P4581 [BJOI2014]想法(玄学算法,拓扑排序)
洛谷题目传送门萝卜大毒瘤题意可以简化成这样:给一个DAG,求每个点能够从多少个入度为\(0\)的点到达(记为\(k\))。一个随机做法:给每个入度为\(0\)的点随机一个权值,在DAG上求出每个点能够返回到的入度为\(0\)的点的最小权值,那么这个权值的期望是\(\frac{\text{随机值域}}{k+1}\)。多选几套随机权值(蒟蒻选了一百次),跑出来的平均值即可输出。实在是...
2019-01-05 23:05:00
151
转载 数论细节梳理&模板
初阶扩展欧拉\(k\ge\varphi(m)\)时,\(b^k\equiv b^{k\%\varphi(m)+\varphi(m)}(\bmod m\))扩展CRT推式子合并同余方程。https://www.cnblogs.com/flashhu/p/9346078.html扩展BSGS根号大暴力,就是细节很多。https://www.cnblogs.com/flashh...
2018-12-28 14:33:00
152
转载 多项式细节梳理&模板(多项式)
基础很久以前的多项式总结现在的码风又变了。。。FFT和NTT的板子typedef complex<double> C;const double PI=acos(-1);void FFT(C*a,R op){ for(R i=0;i<N;++i) if(i<r[i])swap(a[i],a[r[i]]); for(R i=...
2018-12-19 21:03:00
244
转载 UOJ277【清华集训2016】定向越野(计算几何,最短路)
UOJ题目传送门显然最优的路径只会经过若干条两个圆的公切线和若干段圆弧为了方便,把起点终点看成两个半径为\(0\)的圆也行。最烦的就是算两个圆的公切线了,一共有四条对于靠外面的两条,我们把切线、半径和两圆心之间的线段连起来,会构成一个直角梯形。我们可以求出两圆心连线的倾斜角,进而求出这两条切线的倾斜角,然后切线的直线方程就可以写出来了。对于靠里面的两条,同样把切线、半径和两圆...
2018-12-02 17:51:00
318
转载 字符串数据结构模板/题单(后缀数组,后缀自动机,LCP,后缀平衡树,回文自动机)...
模板后缀数组#include<bits/stdc++.h>#define R register intusing namespace std;const int N=1e6+9;int sa[N],rk[N],hei[N],x[N],y[N],c[N];char s[N];void Rsort(R n,R m){ for(R i=1;i<=n;+...
2018-11-29 17:22:00
168
转载 最小表示法模板(洛谷P1368 工艺)(最小表示法)
洛谷题目传送门最小表示是指一个字符串通过循环位移变换(第一个移到最后一个)所能得到的字典序最小的字符串。因为是环状的,所以肯定要先转化为序列,把原串倍长。设决策点为一个表示法的开头。比较两个决策点\(i,j\),找到它们的LCP(假设长度为\(k\))。假设\(s_{i+k}>s_{j+k}\),那么显然决策\(s_{i...i+k}\)是分别不优于决策\(s_{j...j...
2018-11-10 22:49:00
200
转载 NOIP2018退役记(记事)
希望还是要有的,万一退役了呢?Day1听说300是大众分?不会T2,不会T3,再别OI。Day2听说200是大众分?T1FST掉,不会T2,不会T3,再别OI。茶馆小人书那些让我们聊以慰藉的现实是什么?当我每次回忆起与十来个500多分的昔日战友在一个机房里奋斗的时光我就会知道什么是现实了。yyb是我们的红太阳zsy是我们的蓝月亮ycb精通板刷BZOJxz...
2018-11-10 19:39:00
245
转载 洛谷P3953 逛公园(NOIP2017)(最短/长路,拓扑排序,动态规划)
洛谷题目传送门又是一年联赛季。NOIP2017至此收官了。这个其实是比较套路的图论DP了,但是细节有点恶心。先求出\(1\)到所有点的最短路\(d1\),和所有点到\(n\)的最短路\(dn\)。设\(f_{i,j}\)表示\(i\)号点,所有与\(d1\)差距不超过\(j\)的路径条数。转移的时候肯定是从小到大枚举\(j\),再枚举边转移。显然每条边都有一个\(\Delta\)...
2018-11-06 00:51:00
164
转载 作为一个蒟蒻谈一点考试经验(总结)
NOIP退役预定?闲话我们为什么要回忆往事呢?刚刚准备练一下手感,就去看【NOIP2016】天天爱跑步。想了一下。“感觉在链上差分一下,开个桶统计就好了吧,原来是道傻逼题。”默念出这句话的时候,心里颤了一下。2016年,我初三,因为15年PJ踩线一等拿到了就去TG玩玩。看到这题,想起来教练前几天不是讲了个dijkstra求最短路么?就先跑一遍,把路径找出来,再一秒一秒地...
2018-11-03 07:54:00
133
转载 各种分治的套路汇总(分治)
咕咕咕。。。NOIP退役预定?最近膜你赛的分治题总是不会,窝太弱了qwq基础应用快速幂?(某些多组询问的矩阵乘法题,预处理出矩阵\(2^j\)的幂,然后每次取出合并,可以优化时间复杂度)归并排序?翻转排序?(NOIAC32 Sort)序列分治关于最值分治是序列分治中最常见的,要求的东西一般都长成这样:\(\sum\limits_{l=1}^n\sum\limits_{r=...
2018-10-29 23:16:00
189
转载 Codeforces Round #517 Div. 2/Div. 1
\(n\)天没更博了,因为被膜你赛的毒瘤题虐哭了。。。既然打了这次CF还是纪念一下。看看NOIP之前,接下来几场的时间都不好。这应该是最后一场CF了,差\(4\)分上紫也是一个遗憾吧。A给一个矩形,每次从外面剥掉一圈,按剥去次序的奇偶分开,问最前\(k\)个奇数圈的总面积。普及组题,直接模拟。#include<bits/stdc++.h>#define LL l...
2018-10-23 11:58:00
146
转载 洛谷P4155 [SCOI2015]国旗计划(贪心,树形结构,基数排序)
洛谷题目传送门\(O(n)\)算法来啦!复杂度优化的思路是建立在倍增思路的基础上的,看看楼上几位巨佬的描述吧。首先数组倍长是一样的。倍增法对于快速找到\(j\)满足\(l_j+m\le r_i\)进行了优化。然后菊开队长说可以建个树优化,可是他没讲清楚就把这个神仙东西扔给了我这个蒟蒻。。。一个晚上终于把这个模性建出来了。在倍长的序列上,我们对于每一个\(i\)找到最小的\(j\)...
2018-10-08 16:39:00
268
转载 基数排序模板(基数排序,C++模板)
算法的理论学习可右转Creeper_LKF大佬的洛谷日报一个优化算法理论时间复杂度的实例点这里另一个实例点这里时间复杂度\(O(n)\),算常数的话要乘位长。蒟蒻参考了Creeper_LKF大佬的模板,并在通用性上面稍微提升了一点。可以兼容所有存储整数的基本类型,以及在此基础上构建的结构体类型(多关键字排序时,优先级高的关键字默认需要在结构体中靠后)。函数原型template...
2018-10-07 22:44:00
618
转载 k短路模板(洛谷P2483 [SDOI2010]魔法猪学院)(k短路,最短路,左偏树,priority_queue)...
你谷数据够强了,以前的A*应该差不多死掉了。所以,小伙伴们快来一起把YL顶上去把!戳这里!俞鼎力的课件需要掌握的内容:Dijkstra构建最短路径树。可持久化堆(使用左偏树,因其有二叉树结构且能动态合并。构建方法类似可持久化线段树)。#include<bits/stdc++.h>#define RG register#define R RG intusing...
2018-10-04 22:38:00
193
转载 洛谷P4907【CYH-01】小奔的国庆练习赛 :$A$换$B$ $problem$(DFS,剪枝)
洛谷题目传送门顺便提一下题意有一个地方不太清楚,就是如果输出No还要输出最少需要添加多少张牌才能满足要求。蒟蒻考完以后发现四个点Too short on line 2。。。比较需要技巧的搜索既然是同一个花色要连续,那就枚举每一个花色在哪一段区间连续并选中四个区间,累计每个点数的选中次数。最后来一个\(O(13)\)的\(\text{check}\),首先每个点数选中次数要不少于已...
2018-10-03 19:52:00
213
转载 BSGS及扩展BSGS总结(BSGS,map)
蒟蒻哪里有什么总结,只能点击%YL%还有这位ZigZagK大佬的blog\(\mbox{BSGS}\)模板题:洛谷P3846 [TJOI2007]可爱的质数给定\(a,b\)和模数\(\mbox{YL}\),求\(a^x\equiv b(\bmod\mbox{YL})\)中\(x\)的最小非负整数解。保证\(\gcd(a,\mbox{YL})=1\)。设\(k=\lceil\s...
2018-10-02 19:08:00
145
转载 FWT模板(洛谷P4717 【模板】快速沃尔什变换)(FWT)
洛谷题目传送门只是一个经过了蛇皮压行的模板。。。总结?%%%yyb%%%#include<bits/stdc++.h>#define LL long long#define RG register#define R RG int#define G if(++ip==ie)fread(ip=buf,1,S,stdin)#define For ...
2018-09-30 17:53:00
147
转载 洛谷CF264D Colorful Stones(子序列匹配,思维)
洛谷题目传送门神仙思维题。对于两个字符串的匹配问题,似乎之前蒟蒻写的HAOI2010最长公共子序列题解中提到的建网格图模型是一种套路?给一个稍微强一点的样例(把字母换成了ABC)AABCBBACBA它所对应的网格图如下(横轴代表\(s\),纵轴代表\(t\),显示的点表示可达状态)我们首先可以大致确定,所有的可达状态在一个不规则图形的界内(红色线条)。第\(i\)行(或...
2018-09-28 15:35:00
229
转载 洛谷SP22343 NORMA2 - Norma(分治,前缀和)
洛谷题目传送门这题推式子恶心。。。。。考虑分治,每次统计跨过\(mid\)的所有区间的答案和。\(i\)从\(mid-1\)到\(l\)枚举,统计以\(i\)为左端点的所有区间。我们先维护好\([i,mid]\)区间内最小值\(mn\)和最大值\(mx\)。我们可以想到,对于某一个左端点,它的右端点\(j\)在一定的范围内,最小值和最大值都不会变。这里就看到一些可以重复利用并快速计...
2018-09-27 19:11:00
129
转载 分数规划模板(洛谷P4377 [USACO18OPEN]Talent Show)(分数规划,二分答案,背包)...
分数规划是这样一个东西:给定若干元素,每个元素有两个属性值\(a_i,b_i\),在满足题目要求的某些限制下选择若干元素并求出\(\frac{\sum a}{\sum b}\)的最大值。如果没有限制的话,肯定是贪心的选。假设当前选择了一个解\(x_0\),却并不是\(\frac{\sum a}{\sum b}\)的最大值,我们有\[\frac{\sum a}{\sum b}>...
2018-09-26 15:37:00
179
转载 洛谷P4891 序列(势能线段树)
洛谷题目传送门闲话考场上一眼看出这是个毒瘤线段树准备杠题,发现实在太难调了,被各路神犇虐哭qwq考后看到各种优雅的暴力AC。。。。。。宝宝心里苦qwq思路分析题面里面是一堆乱七八糟的限制和性质,这时候需要冷静想想有没有可利用的地方。蒟蒻一开始往势能线段树上面想了想。定义一个全局势能函数,为所有\(C_i<B_i\)的位置个数。注意两个操作的修改都不会小于原来的数。一个...
2018-09-24 23:00:00
253
转载 BZOJ4695 最假女选手(势能线段树)
BZOJ题目传送门终于体会到初步掌握势能分析思想的重要性了。一开始看题,感觉套路还是很一般啊qwq。直接在线段树上维护最大值和最小值,每次递归更新的时候,如果不能完全覆盖就暴力递归下去。挺好写的欸鉴于上次写冒险常数太大的经历,蒟蒻这次来个码风奇特的指针线段树#include<bits/stdc++.h>#define RG register#define R RG...
2018-09-23 14:22:00
273
转载 BZOJ5312 冒险(势能线段树)
BZOJ题目传送门表示蒟蒻并不能一眼看出来这是个势能线段树。不过仔细想想也并非难以理解,感性理解一下,在一个区间里又与又或,那么本来不相同的位也会渐渐相同,线段树每个叶子节点最多修改\(\log a\)次(\(a\)为值域)。那么,我们做区间修改的时候,进行判断:如果这一次修改对区间里所有数的影响都是一样的,那么直接在当前位置放懒标记。如何判断呢?又是一个位运算技巧:维护区间与和...
2018-09-21 15:01:00
181
转载 洛谷P3959 宝藏(NOIP2017)(状压DP,子集DP)
洛谷题目传送门Dalao的题解多数是什么模拟退火、DFS剪枝、\(O(3^nn^2)\)的状压DP之类。蒟蒻尝试着把状压改进了一下使复杂度降到\(O(3^nn)\)。考虑到每条边的贡献跟它所在的层有关,所以如果我们能够将一层的边一起加进去,计算就会方便许多。于是想办法把这个转移过程状压一下。设\(f_{i,j}\)为当前已选点集为\(i\),下一层加入的点集为\(j\)时,新加入的...
2018-09-19 11:50:00
133
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人