
做题笔记
文章平均质量分 65
Nova Dvorak
前浑水摸鱼的OIer,现光明正大摆烂的带学生。
展开
-
POJ2279 Mr. Young's Picture Permutations
好久没写博客了咕咕精又回来了!半退役选手为了备战GDKOI不得不在肝完期末考之后牺牲半个寒假为了找回手感先刷点水题思路很简单假设我们将每一个同学从小到大排列,然后把每一个同学加进来,任选一行加入到这一行末尾。只要每次加入后都保证这一份队形是符合要求的,以后更高的人加进来也不会有任何问题。如果当前前面有一行突出来了,那再后面要把它前面的位置补齐就只能用更高的人去补,最后就会导致凸出来的...原创 2020-01-18 15:19:45 · 218 阅读 · 0 评论 -
洛谷 P2822 组合数问题
观察数据特点:n≤2000n\le 2000n≤2000而且理论上会访问到低于(nm)n\choose m(mn)的每一种可能所以应该全部都要算好可以用杨辉三角来算啦kkk是固定的(说实话看到这个条件我以为送分题,再看时发现还是不会做其实是懒)k∣(ij)k\mid {i\choose j}k∣(ji)其实就是(ij)mod k=0{i\choose j}\mod k =0(...原创 2019-11-14 21:14:57 · 330 阅读 · 0 评论 -
洛谷 P1850 换教室
终于有一道没有多组数据的题啦!看了看题解,他们的状态转移都打得好长……所以索性就不看了!这其实就是个比较裸的期望DP但是我太菜了以至于我忍不住看题解首先跑一遍Floyd求全局最短路没有毛病然后定义状态:double f[i][j][k]为前iii堂课中请求换了jjj堂,上学时每一天去到第iii堂课的教室后,总共已经走过的路程,其中k=1k=1k=1表示第iii堂课申请换课,k=0k=...原创 2019-11-14 20:20:12 · 154 阅读 · 0 评论 -
洛谷 P2831 愤怒的小鸟
一看就是道毒瘤题两位数的数据范围,一看不是暴搜枚举就是状压了我们考虑状压啦预处理出O(n2)O(n^2)O(n2)条抛物线各自串起来哪几只猪,然后位运算暴算一通先推个抛物线公式{x12a+x1b=y1x22a+x2b=y2\begin{aligned}\begin{cases}{x_1}^2a+x_1b=y_1\\{x_2}^2a+x_2b=y_2\\\end{cases}\end...原创 2019-11-14 11:48:28 · 146 阅读 · 0 评论 -
洛谷 P3958 奶酪
就这样一道水题我都要抄题解一开始我用了一种比较玄学的算法:按纵坐标排序,然后按顺序查看它能不能由前面的点达到但是后来发现可以被以下数据HACK:我的玄学做法注定会先查看低处的洞,但是低处的洞可能是从高处的洞跑过来的正解当然是搜索啦我们让每一个与下表面相切的点向周围扩展,然后检查它们是否到达上表面当然,不用回溯——被访问过而又回来了的点注定达不到上表面#include<cstd...原创 2019-11-14 07:52:31 · 120 阅读 · 0 评论 -
P3952 时间复杂度
出 现 了简 单 % 你这道题把我的毒瘤码风都逼出来了这不就是道模拟吗!我们用一个栈存已经使用的变量,用一个栈存这一层是否对复杂度有贡献,同时写一个skip函数,在出现循环不能进入的情况时强行跳过这一段代码最后把复杂度算出来,对比就好了变量解释:code:每一行的代码F:用于占位,内容一定为"F"var:变量名from:循环起始值to:循环终值v:每个变量是否被使用var...原创 2019-11-13 11:15:52 · 147 阅读 · 0 评论 -
P3951 小凯的疑惑
感觉我Day2要挂了搞了一天只搞了四题先水了这题的博客吧这道题现在再给我做已经没有意义了——结论题嘛我就来讲讲去年我做这道题时是怎么在考场上AC的没记错年份!校内模拟赛!当时我一看这道题:这不是可以背包水分吗?当即打了个背包找规律然后枚举两个数疯狂试按顺序枚举2和另外一个数的组合时,我发现:怎么另一个数每增加1结果就会增加1呢?又枚举3,发现:怎么另一个数增加1它就增加2呢?以...原创 2019-11-12 22:28:42 · 122 阅读 · 0 评论 -
洛谷 P5022 旅行
day2就蓝题起步不是要我命吗目测数据:不都是基环树和树嘛?基环树我不会但是这个树的贪心不是裸的吗?大手一挥:这部分分我打定了!int outp[5100],len;void dfs(int x,int fa){ outp[++len]=x; list<int>q;//链表……不要问我为什么要用这玩意儿(因为没用过想试一试 for(int k=last[x];k;k=a...原创 2019-11-12 22:03:23 · 364 阅读 · 0 评论 -
洛谷 P5021 赛道修建
我九月的时候为什么不写笔记啊啊啊这道题参考了Owen_Codeisking的做法Owen大佬的头像那个妹子谁能告诉我叫什么名字长得挺好看的回到正题长度最小的道路最长最长。我们设这个答案为xxx那么显然如果答案<x答案<x答案<x也一定找得到符合或优于答案要求的划分方案。所以?二分啦……我做这道题的时候死活想不到是二分还以为是树上贪心或者树形DP什么的解释全在...原创 2019-11-12 15:20:08 · 152 阅读 · 0 评论 -
洛谷 P5020 货币系统
这是一个集合问题?结论只有一点:任何一张可以被另外的纸币表示出来的纸币都可以被删去比如:货币系统(3,[2,3,5])(3,[2,3,5])(3,[2,3,5])与货币系统(2,[2,3])(2,[2,3])(2,[2,3])等价感性的证明比较好想:首先,一张纸币xxx能被删去当且仅当它的所有倍数都可以被其它的纸币表示然而,如果我们拼凑出了kxkxkx,(k+1)x(k+1)x(k+1)...原创 2019-11-12 09:55:14 · 180 阅读 · 0 评论 -
洛谷 P5019 铺设道路
开始刷历年NOIP了呢~~众所周知这是一道三倍经验题2013年初一参加提高的人可以在高三的赛场上感受到回家的温暖首先线段树和分块什么的就免了说实话在考场上我也会打线段树的(好吧想了想我不会打线段树做法呢)直接贪心贪心策略显然啦:直接横着填过去嘛问题在于如何计量填充块数目我们可以选取填充块的开头作为计数标志,明显每当一个位置比上一个位置更深时我们就不得不增加填充块深了多少就要填充多...原创 2019-11-12 09:11:06 · 322 阅读 · 0 评论 -
LOJ #6501. 「雅礼集训 2018 Day4」Cube
又被暴踩了QAQ第一题天知道这么做啊我们又做了一套师兄出的题这位师兄就是有着“地表最强高中生”美名的xgc师兄打钱啊我后两题都做得还行(虽然第二题莫名被卡精?),但是在各位大巨奆老第一题都AC的同时我的第一题只拿了20分没错就是这道题了。通过打表我们可以发现:记nnn维图形中有fn,mf_{n,m}fn,m个mmm维元素递推式如下:fi,j=2fi−1,j+fi−1,j−1f...原创 2019-11-11 17:13:23 · 276 阅读 · 0 评论 -
LOJ #6495. 「雅礼集训 2018 Day1」树
今天我们又做师兄出的比赛了!我一道题都不会!抱灵了!要是这是CSP - Sday1难度我就赶紧退役滚回去搞课内吧第一题就是期望题……题外话:师兄出题时把输出的第一行去掉了,就是说我们在考试的时候并不需要输出四舍五入的结果别看它看上去很像概率期望DP,实际上你会发现你根本没有办法直接对期望进行状态转移这道题实质上是一个计数类DP面向数据题我们先统计出各种树的数量再给它们做一个平均值就...原创 2019-11-07 22:19:37 · 830 阅读 · 0 评论 -
洛谷 P4035 [JSOI2008]球形空间产生器
高斯消元首先给出几个提示:nnn维空间中两点距离为:∑i=1n(x1,i−x2,i)2\sqrt{\sum\limits_{i=1}^{n}(x_{1,i}-x_{2,i})^2}i=1∑n(x1,i−x2,i)2球心是什么?就是到球面上任意一点的距离都相等的点在nnn维空间中,知道一个点与n+1n+1n+1个点的距离,就可以确定这个点的坐标知道这么多就够了。因为定理1...原创 2019-11-06 21:10:48 · 141 阅读 · 0 评论 -
高斯消元
高斯消元用于解多元一次方组,还可以用于矩阵求逆等问题其实这个方法就是一个裸的暴力代入假设有nnn条一次方程式依次排开如下:a1,1x1+a1,2x2+⋯+a1,nxn=b1a2,1x1+a2,2x2+⋯+a2,nxn=b2⋮an,1x1+an,2x2+⋯+an,nxn=bn\begin{aligned}a_{1,1}x_1+a_{1,2}x_2+&\cdots+a_{1,n}x_n=...原创 2019-11-06 20:12:55 · 127 阅读 · 0 评论 -
洛谷 P1801 黑匣子_NOI导刊2010提高(06)
这道题也提供两种做法平衡树(略)虽然说起来有点大材小用但是平衡树实在是太万能了插入,全局第kkk大,最最最典型的两种操作不多说了#include<cstdio>#include<set>using namespace std;int a[31000],b,cnt;struct splay_tree{ struct node { int val,n...原创 2019-11-06 19:12:31 · 153 阅读 · 0 评论 -
2462: [BeiJing2011]矩阵模板
文章目录哈希做法暴力做法哈希做法我们开一个矩阵HHH,Hi,jH_{i,j}Hi,j记录串{Hi,j−B+1⋯Hi,j}\{H_{i,j-B+1}\cdots H_{i,j}\}{Hi,j−B+1⋯Hi,j}的hash然后用相同的方法把[Hi−A+1⋮Hi]\begin{bmatrix}H_{i-A+1}\\\vdots\\H_{i}\end{bmatrix}⎣⎢⎡Hi−A+...原创 2019-11-06 09:12:54 · 164 阅读 · 0 评论 -
博主做题时的SB错误大合集(置顶)
不用解释了吧但是可能存下的题目不多了原创 2019-11-06 09:10:01 · 178 阅读 · 0 评论 -
AtCoder Beginner Contest 143 F - Distinct Numbers
这道题是一道灰常玄学的题。我们要对它进行一个抽象的模型建立首先确定一点:只要维护相同数的个数,无论数列中的数是多少都没有问题。然后显而易见地有一个贪心删法:每次取个数最多的数删除举个例子:对于数列1 2 2 3 3 3 4 4 4 4我们建立一个aaa数组,aia_iai记录iii的个数a={0,1,2,3,4}a=\{0,1,2,3,4\}a={0,1,2,3,4}我们将aaa变...原创 2019-11-06 09:08:36 · 474 阅读 · 1 评论 -
POJ1193 [NOI1999]内存分配
这道题的正解貌似是链表,但是我用了set代替链表的功能,于是乎调了有两三天。本篇目录思路本质大体思路具体实现储存结构重(dai)点(ma)思路本质%你大体思路观察题面和数据范围。需要维护的信息比较复杂,大致分两部分:正在执行任务的程序对于这部分数据,我们需要储存它们的结束时间占用内存区间正在等待队列中的程序对于这部分数据,我们需要储存占用时长占用区间长度...原创 2019-11-04 16:39:26 · 412 阅读 · 0 评论 -
内存分配 AC记:做题还是要细心
这道题一看上去就让人感觉很懵索性就自己YY吧看到“区间”两个字,我脑子里只有一个算法:珂朵莉树那么我们开一个set,尝试着把每个可用的区间放进去,以左端点排序,再开一个优先队列,把当前正在执行的任务放进去,按照结束时间排序。每个任务进来时,我们检索一遍占用优先队列,如果有已经结束的任务,就将它们退出,同时释放内存。(1)然后检索内存区块set,检测是否有符合的区块,如果没有,就记录它进入...原创 2019-11-04 15:29:30 · 269 阅读 · 0 评论 -
洛谷 P4147 玉蟾宫
这好像是一道悬线法的题目,但是我不会,只能用单调栈水过了我们将ai,ja_{i,j}ai,j定义为从(i,j)(i,j)(i,j)出发向上(坐标减小)可以达到的最长的、没有R的路径比如说样例5 6 R F F F F F F F F F F F R R R F F F F F F F F F F F F F F F中的aaa数组对应如下:0 1 1 1 1 11 2 2 ...原创 2019-11-01 11:58:26 · 218 阅读 · 0 评论 -
POJ3349 Snowflake Snow Snowflakes
这是一道Hash题说到hash,我们就想到了字符串然后就想到了string然后我就想到了之前我写的一篇博客:这好像称不上是博客然后我们就想到了用basic_string做这道题队形好评虽然说非常简略,但是看了上面那一篇博客多少还是可以明白basic_string是个什么东西吧看这里也可以basic_string提供了一个封装形式的u32string,表示32位无符号整数的basic...原创 2019-10-31 22:07:42 · 391 阅读 · 0 评论 -
洛谷 P2827 [NOIP2016]蚯蚓
二话不说直接开干首先,这个数据范围不小,如果使用堆或优先队列对所有的蚯蚓进行暴力维护的话将会导致O(mlog(n+m))O(m\log(n+m))O(mlog(n+m))的复杂度——这个常不好卡。所以我们想办法找到线性复杂度的做法。观察每次剪断后的蚯蚓,假设a,ba,ba,b是相继两段要被剪断的蚯蚓aaa被剪成a1=apa_1=apa1=ap与a2=a(1−p)a_2=a(1-p)a2...原创 2019-10-31 16:07:05 · 163 阅读 · 0 评论 -
BZOJ 3771 Triple
想了我好久,然后发现我好像还是没有学到FFT的精髓……万物皆可FFT!由于是权限题,我放一下大意:给出一个数列,让你从中间按顺序挑出1~3个数,求它们的和可能是多少,并且从小到大输出每种可能的方案数。数学语言表达:给出一个有nnn个数的数列AAA,求集合{Ai,Ai+Aj,Ai+Aj+Ak∣1≤i<j<k≤n}\{A_i,A_i+A_j,A_i+A_j+A_k\quad|\...原创 2019-10-31 12:40:27 · 234 阅读 · 1 评论 -
洛谷 P3338 [ZJOI2014]力
咕咕咕~~~昨天刚学会FFT,今天早上本来不想做的,结果去看莫反发现看不懂,于是又回归了FFT……然后发现我除了两道模板题其他题都不会QAQ(I am so weak)这道题我采用了抄题解的学习方式看题解的推导看的一脸懵逼后来又去看LJY大佬的blog,才发现题解有个地方写错了最后又看了看绿鸟chen_zhe的题解才稍微明白一点目前虽然AC了但是还是觉得要打篇笔记理顺一下声明:本...原创 2019-10-30 19:00:46 · 158 阅读 · 0 评论 -
洛谷 P2261 [CQOI2007]余数求和
前两天肝了整整两天的FFT,博客暂咕今天打算先肝个莫队,于是复习一下整除分块题面:给出n,k(1≤n,k≤109)n,k(1\le n,k\le 10^9)n,k(1≤n,k≤109),求∑i=1nkmod i\large\sum\limits_{i=1}^{n}k\mod ii=1∑nkmodi推一波公式:∑i=1nkmod i=∑i=1nk−i∗⌊ki⌋=nk−∑i=1ni∗...原创 2019-10-30 10:42:20 · 144 阅读 · 0 评论 -
AcWing 127 任务
有哪位同学在POJ、洛谷或HDU上找到原题的请在评论区告知AcWing访问量不是很可观一眼看过去,500xi+2yi500x_i+2y_i500xi+2yi这样的式子就让人很瞧不起yiy_iyi再看数据范围:0≤yi≤1000\le y_i \le 1000≤yi≤100明显优先选择xix_ixi大的来做嘛!...原创 2019-10-28 10:35:05 · 216 阅读 · 0 评论 -
洛谷 P1842 奶牛玩杂技 / 算法进阶 耍杂技的牛
经典贪心入门题很明显我们只需要对它们进行一个排序排在前面的奶牛站在最上面可以通过微扰来寻找排序依据:假设我们已经将奶牛排好序了,那么如果更改两头相邻奶牛的位置,答案就会变大记1∼i1\sim i1∼i的奶牛总重为WWW,第iii头奶牛的重量为wiw_iwi奶牛iii与奶牛i+1i+1i+1的压扁指数分别为W−siW-s_iW−si和W+wi−si+1W+w_i-s_{i+1}W+w...原创 2019-10-26 18:10:20 · 277 阅读 · 0 评论