随笔分类 - 题解
一些比较好的题目的题解
摘要:[toc] AcWing 102. 最佳牛围栏 比较有意思的一道题 总的思路就是二分+前缀和,不难,但是其中有的思想还是有价值的 所以我就主要从这道题入手来浅谈二分中的转化判定问题 思路 如何求一个字段,使和最大且自段长度不超过L 咕咕咕,写不出数学公式来就只贴代码吧
阅读全文
摘要:[toc] 前言 博客咕咕咕了好久了,是时候写一下了 题目链接 "AcWing 95 费解的开关" 思路 首先可以看出 1.每一个位置顶多只会操作一次。因为如果操作两次的话,相当于不操作,必然是不满足最优解 2.在一套方案中,操作的顺序无关紧要。 3.如果我们确定了第I行的操作方案的话,那么后面的行
阅读全文
摘要:[toc] 链接 "P2863 [USACO06JAN]牛的舞会The Cow Prom" 思路 用$tarjan$求出强连通分量,并且记录出强连通分量里的点的个数,如果个数大于$1$就$ans++$ 代码 错误原因 少算了割点
阅读全文
摘要:[toc] 颓了好久终于写了个题了 题目链接 "点这里,咕咕咕" 思路 给定一张N个点M条边的有向无环图,分别统计从每个点出发能够到达的点的数量。 设从$x$点出发能到达的点构成的集合$f(x)$ $$f(x)={x} \cup\Bigg(\bigcup \ \ \ f(y)\Bigg)(x,y联通
阅读全文
摘要:[toc] 到现在才写最长路,我真是太菜了 题目链接 "P1807 最长路_NOI导刊2010提高(07)" 思路 拓扑排序+dp f[i]表示到i点的最长路,然后转移就不用写了,看代码吧 代码
阅读全文
摘要:[toc] 链接 "P1080 国王游戏" 思路 首先我们先思考一下当只有两个大臣的时候怎么做(当题目没有思路的时候,先考虑数据范围小的情况往往是有帮助的)。 如果国王左手上的数是 $a_0$,两个大臣左右手上的数是$a_1,b_1,a_2,b_2$;那么有两种排法: 第一个大臣排在前面,那么第一个
阅读全文
摘要:[toc] 题目链接 "P1168 中位数" 思路 堆 开两个堆,一个大根堆一个小根堆,然后一个$mid$来记录中位数,如果插入的数比mid大,就插入到小根堆,反之插入到大根堆中 这样就保证了小根堆中的元素一定比大根堆中的大(~~这不是废话吗~~) 所以,小根堆的堆顶是第一个大于$mid$的数,大根
阅读全文
摘要:[toc] 写在前面 咕了这么久的博客也该写写了,最近吃饭都 吃不饱 的博主实在是没什么动力学习..... 题目链接 "P1250 种树" 思路 想要种树种得少,就要一棵树在多个区间同时出现。 所以, 在重叠部分种尽可能多的树 即可。 然而重叠部分一定在区间的尾部。 所以先对结束苇子进行排序,然后依
阅读全文
摘要:[toc] 蒟蒻刚学了线段树的最最最最最嘴醉罪咀基本的东西,看什么题都想用线段树 题目链接 "P1083 借教室" 思路 如果不会线段树请 "点这里" 题目中说的是求第一个不满足的申请人 我们可以把借教室的操作看成线段树的区间修改,把要借的教室数量$d$看成修改的值的相反数,然后我们记录一下区间的最
阅读全文
摘要:[toc] 题目链接 "P1731 [NOI1999]生日蛋糕" 思路 搜索+ 剪枝 用$mins[i]$表示第$i$层最小的表面积$minv[i]$表示第$i$层最小体积,设最底层为第$n$层,枚举每一层的高和半径。 不过复杂度这样复杂度上天 所以要加上优化(剪枝) 我们先来看一下下题目中的几个细
阅读全文
摘要:[toc] 内容有些肤浅,以后会深入证明,先挖好坑 题目链接 "P3373 【模板】线段树 2" 思路 这题乍一看觉得好难啊,然后我们来仔细分析一下题目 题目说有两种修改操作 1.区间加某一值 2.区间乘某一值 首先想到的思路一定是打两个$lazymark$ 男 就 男 在这两个操作有先后,我$ri
阅读全文
摘要:[toc] 题目链接 "P2184 贪婪大陆" 思路 树状数组的模板题 1.只要一个区间的开头在一个节点$i$的左边,那么这个区间包含在区间$1~i$中。 2.只要一个区间的尾部在一个节点$j$的左边,那么这个区间肯定不属于$j$之后的所有区间 所以我们可以搞两个树状数组来做 $tree_{head
阅读全文
摘要:终于完全会了,我真是太菜了!竟然一直忘了一个很小的地方导致没对..... 一.中序和先序求后序 题目: "P1827 美国血统 American Heritage" 二.求先序 题目: "P1030 求先序排列"
阅读全文
摘要:题目链接 "P1087 FBI树" 思路 思路一 首先题目中说明了"01"串的长度是$2^n$,也就是说这是一棵满二叉树,也就是可以用$tree[i]$来表示根$tree[2 i]$来表示左孩子,$tree[2 i+1]$来表示右孩子 所以思路就有了直接递归把树的节点弄成"F","B","I".
阅读全文
摘要:摆渡车这题是真的毒瘤,放在普及组里是真的皮 几个基本的东西: 1、车肯定要等到某个人来再出发是吧,于是可以先枚举第一次的出发时间。 2、一辆车到达的时候,如果有些人已经在等了,所以车一到就马上出发 3、既然要等,那就要等到人再走等几个人都有可能,这里就可以在$dfs$时单独处理一下全都在等的情况可以
阅读全文
摘要:题目链接: "1267 老鼠的旅行" 题目翻译: 题目描述 Description 你是一只生活在笼子里的实验室老鼠。 实验室是一个R行C列的格子矩阵(1 ≤ R,C ≤ 25). 每个格子是一个笼子. (尼玛还要我活么……) 为了让你锻炼身体,实验室管理员允许你在笼子之间移动。 你只能向右和向下移
阅读全文
摘要:首先感谢wxy学长之前告诉我这道题,结果今天竟然一眼切了,咕咕咕 题目链接: "P2388 阶乘之乘" 题目思路: 第一眼看到一定想到的是先求一下阶乘然后看最后又几个零,但是这样会TIL啊 想一下0是怎么出现的—— $10=2 \times 5$ 每一个0都是由因子2和5相乘得出的,只需统计出5的倍
阅读全文
摘要:从我洛谷博客里搬运的,算是补发一下 1.高精度加法: 高精度总结: 1.注意最高位的处理。 2.注意删除前导0 重载运算符实现高精 "点这里"
阅读全文
摘要:题目链接 "P1004 方格取数" 思路 和这篇博客里的四维数组做法一样 "点这里传送" 转移方程: $$f[x1][y1][x2][y2]=max(f[x1 1][y1][x2 1][y2],f[x1][y1 1][x2][y2 1],f[x1 1][y1][x2][y2 1],f[x1][y1
阅读全文

浙公网安备 33010602011771号