随笔分类 -  题解

摘要:写出了$O((n+m)k^2)$的算法,但是却看不懂$O(nmk)$的算法。 首先说$O((n+m)k^2)$的算法。 把所有牛放在一起从大到小排序,相同则$A$的牛放在前面,问题变为从序列中选择一些元素,使得任意前缀$A$入选的个数大于$B$入选的个数。 $f[i][j][k]$表示考虑了前$i$ 阅读全文
posted @ 2021-02-02 01:06 _onglu 阅读(91) 评论(0) 推荐(0)
摘要:原题链接:P2167 [SDOI2009]Bill的挑战 题意 有$n(\le 15)$个等长字符串,由小写字母和'?'构成,'?'任意匹配。 求有多少个字符串与刚好$k$个匹配。 分析 做了好久然后发现没有这么难,想复杂了。 原来想法是$f[i][j][S]$表示匹配到前$i$个字母,第$i$个字 阅读全文
posted @ 2020-12-24 23:30 _onglu 阅读(85) 评论(0) 推荐(0)
摘要:赛时看了好久,思路一半对了但是没做出来,队友切了,现在赛后补题。 Codeforeces 题意: 有$n(\le 100)$个瓶子,每个瓶子有$a(\le 100)$容量和$b(\le 100)$的水,每次可以转移任意体积的水,但是转移的那部分水会少掉一半,同时如果瓶子满了,继续倒水就会浪费掉那部分 阅读全文
posted @ 2020-12-22 22:41 _onglu 阅读(194) 评论(0) 推荐(1)
摘要:2020.12.16 在CF上做到一道题(div3),把我卡死了,看了答案却很简单。 题目要求给定一组线段,要求删除最少的线段使得剩下有一条线段,与剩下的其他所有线段相交。 可以枚举哪个线段与其他线段相交,问题变成求有多少个线段与当前线段相交。 于是这个问题也等价于求有多少线段与当前线段不相交。 然 阅读全文
posted @ 2020-12-16 01:05 _onglu 阅读(195) 评论(0) 推荐(1)
摘要:原题链接:免费的馅饼 题意 接饼子游戏,饼子每秒下落一格,然后人每秒可以向左或者向右移动一格或者两格,当然也可以原地不动。 问最多接到的饼子价值。 分析 发现网上的做法都是dp+树状数组优化的。 这里提供一个另外的思路。 由于每秒向左向右移动的步数可以是$0,1,2$步,转化在坐标系中可以是一个夹角 阅读全文
posted @ 2019-08-09 10:24 _onglu 阅读(236) 评论(1) 推荐(1)
摘要:原题链接:[POI2007]办公楼biu 题意 求一个稀疏图的补图的连通块个数以及每个连通块里的点数。$N,M$非常大。 分析 考虑广搜,枚举每个点,维护一个链表记录未被访问到的点。 每次访问到一个新点,删除所有与它不相连的点即可。 具体做法可以是标记所有与它相连的点,然后在链表里删除+入队其他点。 阅读全文
posted @ 2019-08-06 10:50 _onglu 阅读(180) 评论(0) 推荐(0)
摘要:原题链接:P2051 [AHOI2009]中国象棋 题意 炮能隔一个棋子打人,求一个棋盘上放置炮的合法方案数(炮不互相攻击)。 分析 既然求方案数那应该就是dp(神仙言论),以前做过很多类似的状压DP,这个题很直观的三进制状压啊。。 看看范围。。。 $n/le 100$。溜了溜了此题无解 理性分析一 阅读全文
posted @ 2019-03-17 15:50 _onglu 阅读(150) 评论(0) 推荐(0)
摘要:原题链接:P2825 [HEOI2016/TJOI2016]游戏 题意 就是在一张图上放炸弹,炸弹占领横纵一行一列。 炸弹不能穿透硬石头,软硬石头上都不能放炸弹。 求最多能放几个炸弹。 分析 (第一道没看题解AC的网络流) 感觉跟这道题有点像啊。。 P1129 [ZJOI2007]矩阵游戏 如果没有 阅读全文
posted @ 2019-02-16 16:33 _onglu 阅读(242) 评论(0) 推荐(0)
摘要:A - Got Any Grapes? 题意 Andrew, Dmitry and Michal想要吃葡萄。 Andrew只吃绿葡萄。Dmitry不吃黑葡萄。Michal吃嘛嘛香。 他们分别吃$x,y,z$个葡萄,绿,紫,黑葡萄分别有$a,b,c$个。 问能不能满♂足他们。 分析 Andrew只吃绿 阅读全文
posted @ 2019-02-13 16:13 _onglu 阅读(195) 评论(0) 推荐(0)
摘要:A - Parity 题意 给定一个$b$进制数,要求输出它在十进制下是奇数还是偶数。 分析 花了我略多的时间,首先题目中给的数字范围很大,不能直接转化为10进制。 分析性质,发现只有奇数乘奇数还是奇数,其他都是偶数。 对奇数进制和偶数进制分类讨论。 偶数进制看最低位的奇偶性,如果是奇数那么这个数就 阅读全文
posted @ 2019-02-08 00:31 _onglu 阅读(264) 评论(0) 推荐(0)
摘要:原题链接:P1845 Sumdiv 题意 给定$A,B$,求$A^B$对9901取模的值。 分析 先说说我的第一思路:模数是很小的,完全可以开一个桶放下所有的幂次方。 所以我们可以把每个数分解质因数了,然后把每个质数的所有幂次方装进桶里。 然后我们从$1$到$9901$枚举每一位,同时统计他们的个数 阅读全文
posted @ 2019-01-26 09:07 _onglu 阅读(157) 评论(0) 推荐(0)
摘要:原题链接:P1110 [ZJOI2007]报表统计 题意 题意是很简单的。。就是一开始有$n$个元素,每个元素相当于一个队列,总的序列是所有队列按顺序拼接起来的序列,有下面三种操作。 操作一:在原序列第$k$个队列插入一个$x$ 操作二:查询总序列里面相邻元素的差值的绝对值的最小值。 操作三:查询总 阅读全文
posted @ 2019-01-11 12:55 _onglu 阅读(165) 评论(0) 推荐(0)
摘要:原题链接:P5021 赛道修建 题意 给定一颗树(不是二叉树),在树上找到$m$条链。 求最短链的最大值。 分析 其实在考场上想出正解了的。。 就是因为不会STL结果挂了。。 要是写出来就1=了呢。。 气死了。 首先因为要求最短链的最大值,很容易想到二分。 二分出最短链的长度$x$,然后要在树上找到 阅读全文
posted @ 2018-12-24 17:03 _onglu 阅读(234) 评论(0) 推荐(0)
摘要:原题链接:P3250 [HNOI2016]网络 题意 给定一棵无根树,m个操作0操作:增加一条a到b的权值为v的链1操作:删除第t个操作2操作:输出不经过x节点的权值最大的链 分析 数据结构神题。。。 题目中要求维护不经过$x$节点的权值最大值,也就是说所有不经过$x$节点的链都能对答案产生贡献。 阅读全文
posted @ 2018-12-13 05:37 _onglu 阅读(227) 评论(0) 推荐(0)
摘要:原题链接:P1084 疫情控制 题意 给定一棵带权树,$1$号点为根节点,某些点上有军队。 现在要求移动这些军队,使军队覆盖所有的叶子节点,求移动距离最大值的最小值。 分析 很难直接求出最小值,我们可以考虑二分这个最小值,让原问题转化为判定问题。 二分最小值,我们只需要判断能否在$mid$距离内使军 阅读全文
posted @ 2018-12-02 20:45 _onglu 阅读(182) 评论(0) 推荐(0)
摘要:原题链接:P2502 [HAOI2006]旅行 题意 找到一条$s$到$t$的路径,使得路径上最大边权和最小边权的比值最小。 求这个最小值。 分析 一开始的思路是从大的开始加边,一直加到刚好连通位置,然后dfs求出最小比值。 但是很容易证明算法是错的。 正解是:从大到小钦定这个最大边权,然后往小边权 阅读全文
posted @ 2018-12-02 17:14 _onglu 阅读(146) 评论(0) 推荐(0)
摘要:原题链接:P2053 [SCOI2007]修车 题意 有$n$辆车要修,有$m$个修理工,第$j$修理工修第$i$辆车有一个时间$r_{j,i}$。 求顾客最少的平均等待时间。 分析 由于$n$是给定的,所以最小的平均等待时间就是要求最小的总时间。 我们考虑怎么让总时间最短。 很容易发现第$i$辆车 阅读全文
posted @ 2018-12-02 16:49 _onglu 阅读(158) 评论(0) 推荐(0)
摘要:原题链接:P3629 [APIO2010]巡逻 题意 给定一棵树,每次要走过每条边。 现在要求加$k$条边,使得走过每条边后走过的距离最小,求这个最小值。 分析 首先不考虑加边,也就是说$k=0$时,是一棵树,显然每条边要经过两次。 考虑加一条边,很容易发现形成的环上的点只需要经过一遍,最终经过的距 阅读全文
posted @ 2018-11-28 04:54 _onglu 阅读(172) 评论(0) 推荐(0)
摘要:原题链接:P3623 [APIO2008]免费道路 题意 给定一个图(不一定连通),上面有$m$条$0$边和$1$边。 要求选边使图连通,$0$边的数量必须等于$k$。 分析 一开始用很天真的想法加边:先加鹅卵石路,一直加到$k$条。然后再加水泥路,加到满。 然后发现在洛谷上WA了一个点。 仔细分析 阅读全文
posted @ 2018-11-27 06:02 _onglu 阅读(211) 评论(0) 推荐(0)
摘要:T1排序 题意: 给定一个快排,有四种键值选取方法:选区间左边端点,选区间右边端点,选区间终点,选一个随机数。 若为随机数,给定随机数种子以及生成方式。 现在要求用$1~N$构成一个数据卡掉这个快排。 分析: 题意是真毒瘤…… 当了一回毒瘤出题人…… 不过还是挺简单的,我们发现要把快排卡成$O(n^ 阅读全文
posted @ 2018-11-07 15:04 _onglu 阅读(133) 评论(0) 推荐(0)