09 2018 档案
摘要:【BZOJ1055】[HAOI2008]玩具取名(动态规划) 题面 "BZOJ" "洛谷" 题解 裸的区间,设表示区间能否由某个字母替换过来,转移的时候枚举用哪一个变换即可。 cpp include include include inclu
阅读全文
摘要:【BZOJ1053】[HAOI2007]反素数(搜索) 题面 "BZOJ" "洛谷" 题解 大力猜一下用不了几个质因子,那么随便爆搜一下就好了。
阅读全文
摘要:【BZOJ1047】[HAOI2007]理想的正方形(单调队列,动态规划) 题面 "BZOJ" "洛谷" 题解 直接一个单调队列维护一下没给点和它前面的个位置的最大值,再用一次单调队列维护连续列的,每个数和前面个数的最大值,最小值同理,就做完了。 cpp include inclu
阅读全文
摘要:【BZOJ1044】[HAOI2008]木棍分割(动态规划,贪心) 题面 "BZOJ" "洛谷" 题解 第一问随便二分一下就好了,贪心正确性显然。 第二问随便前缀和+单调队列优化一下就完了。 cpp include include using namespace std; de
阅读全文
摘要:【BZOJ1037】[ZJOI2008]生日聚会(动态规划) 题面 "BZOJ" "洛谷" 题解 假设前面的都合法,但是在加完当前的最后一个人之后变得不合法了,那么意味着一定有着一个后缀不合法。把男生看成,女生看成,也就是不存在一个后缀和大于或者一个后缀和小于。而在最后面
阅读全文
摘要:【BZOJ1032】[JSOI2007]祖玛(动态规划) 题面 "BZOJ" "洛谷" 题解 听说是道假题,假的原因是因为出题人可能没有考虑到祖玛的骚套路,比如可以先打几个球进去再一波消掉。也就是出题人基本默认了打一个球就至少要消去一段。 我们就这么做,那么就是个区间模板题了。 cpp in
阅读全文
摘要:【BZOJ1028】[JSOI2007]麻将(贪心) 题面 "BZOJ" "洛谷" 题解 ~~感觉好久没打过麻将了,似乎都快不会打了。~~ 这个数据范围看着就觉得是。 那么就枚举听哪张牌,然后枚举哪张是一对牌 考虑如何剩下的牌是否能够构成顺子或者刻子(这叫法好别扭啊)
阅读全文
摘要:【BZOJ2084】[Poi2010]Antisymmetry(manarcher) 题面 "BZOJ" "洛谷" 题解 一眼马拉车吧。。。明显就是在回文串的基础上随便改了改。 似乎还可以魔改回文树,然而我这智商可能魔改不出来。 稍微注意一下因为长度只能是偶数,所以不是加进来的字符的位置是不能用来更
阅读全文
摘要:【BZOJ1024】[SCOI2009]生日快乐(搜索) 题面 "BZOJ" "洛谷" 题解 看到这个数据范围就感觉是爆搜。我们爆搜左右分成多少块,这样子左右的面积已知,再枚举一下横着切还是竖着切,这样子就可以算答案了。
阅读全文
摘要:【BZOJ1021】[SHOI2008]循环的债务(动态规划) 题面 "BZOJ" "洛谷" 题解 感觉以前的题目都好小清新啊,我这种智商丢失的选手完全写不动。 这题看着就像一个,并且我们发现每种币值之间是独立的,而且起始状态和终止状态同样已知。 设表示只交换前
阅读全文
摘要:【BZOJ1019】[SHOI2008]汉诺塔(数论,搜索) 题面 "BZOJ" "洛谷" 题解 首先汉诺塔问题的递推式我们大力猜想一下一定会是形如的形式。 这个鬼玩意不好算,我们就拿着之间的关系算一下,爆搜一下很容易解出直线方程。 cpp
阅读全文
摘要:【BZOJ1017】[JSOI2008]魔兽地图(动态规划) 题面 "BZOJ" "洛谷" 题解 状态设一下,表示第个物品,有个用于合成,总花费为的最大力量,转移什么的,乱死了,复杂度感觉好假。 cpp include include include inc
阅读全文
摘要:【BZOJ3489】A simple rmq problem(KD Tree) 题面 "BZOJ" 题解 直接做肯定不好做,首先我们知道我们是一个二维平面数点,但是限制区间只能出现一次很不好办,那么我们给每个数记录一下和它相等的上一个位置和下一个位置,那么这两个位置的限定范围就在区间以外,于是变成了
阅读全文
摘要:【BZOJ4477】[JSOI2015]字符串树(Trie树) 题面 "BZOJ" 题解 对于每个点维护其到根节点的所有字符串构成的,显然可持久化一下就很好写了。 然后每次询问就是,写个树剖维护就好了。 cpp include include include
阅读全文
摘要:【BZOJ4260】Codechef REBXOR (Trie树) 题面 "BZOJ" 题解 两眼题。第一眼不会做,第二眼好简单。。。 前缀异或和一下,拿树维护求一个在这个端点以左的最大值,右侧同理,取个最大值即可。 cpp include include include using n
阅读全文
摘要:【BZOJ4500】矩阵(差分约束) 题面 "BZOJ" 然而权限题 题解 显然拆分行和列。不妨设这一行/列总共加减的值是,那么每一个限制就是两个数的和为一个特定的数。这样子不好做,反正是一个二分图,那么把列的变成,这样就变成了差是一个定制,直接差分约束判断一下就好了。 cpp
阅读全文
摘要:【BZOJ2054】疯狂的馒头(并查集,线段树) 题面 "BZOJ" 然而权限题,随便找个离线题库看看题吧。 题解 线段树就是个暴力,如果数据可以构造就能卡掉,然而不能构造,要不然复杂度瓶颈成为了读入了。既然这样,线段树随便跑跑就过了。 大概的做法就是,后面的颜色只要染上了显然就和前面的颜色无关了,
阅读全文
摘要:【BZOJ1005】[HNOI2008]明明的烦恼(prufer序列) 题面 "BZOJ" "洛谷" 题解 "戳这里" cpp include include include include include include include using namespace std; define ll
阅读全文
摘要:【arc074e】RGB Sequence(动态规划) 题面 "atcoder" "洛谷" 翻译见洛谷 题解 直接考虑暴力,设表示当前考虑到第位,最后一个红绿蓝色出现的位置是哪里,发现显然,所以只有三维了,直接即可。至于
阅读全文
摘要:AtCoder Grand Contest 010 A Addition 翻译 黑板上写了个正整数,每次会擦去两个奇偶性相同的数,然后把他们的和写会到黑板上,问最终能否只剩下一个数。 题解 洛谷认为此题过水,已被隐藏。 B Boxes 翻译 有个盒子排成了一圈,第个盒子里有$a_i
阅读全文
摘要:【CF605E】Intergalaxy Trips(贪心,动态规划) 题面 "Codeforces" "洛谷" 有个点,每个时刻第个点和第个点之间有的概率存在一条边。每个时刻可以沿着一条边走或者留在原地。求从号点走到号点的最优的期望时间。 题解 设$E(
阅读全文
摘要:【arc093f】Dark Horse(容斥原理,动态规划,状态压缩) 题面 "atcoder" 有 名选手,编号为 至 。现在这 名选手将进行 轮淘汰赛,决出胜者。若 $x include include using namespace std;
阅读全文
摘要:【CF932E】Team Work(第二类斯特林数) 题面 "洛谷" "CF" 求 题解 寒假的时候被带飞,这题被带着写了一遍。事实上并不难,我们来颓柿子。 首先回忆一下第二类斯特林数关于整数幂的计算公式: $$m^n=\sum_{i=0}^mC_{
阅读全文
摘要:【agc002f】Leftmost Ball(动态规划) 题面 "atcoder" "洛谷" 题解 我们从前往后依次把每个颜色按顺序来放,那么如果当前放的是某种颜色的第一个球,那么放的就会变成号颜色,所以无论何时,号颜色的数量不能少于其他颜色的数量。 可以设状态表示前面
阅读全文
摘要:【agc001e】BBQ HARD(动态规划) 题面 "atcoder" "洛谷" 题解 ~~这些agc都是写的整场的题解,现在还是把其中一些题目单独拿出来发~~ 这题可以说非常妙了。 我们可以把这个值看做在网格图上的一点走到的方案数。 而网格
阅读全文
摘要:【BZOJ4903】【UOJ 300】吉夫特(卢卡斯定理,动态规划) 题面 "UOJ" "BZOJ:给的UOJ的链接......" 题解 首先模的质数更小了,直接给定了。当然是卢卡斯定理了啊。 考虑一个组合数在什么情况下会是一个奇数。$Lucas(n,m)\equiv Lucas(n/2,m/
阅读全文
摘要:【UOJ 275】组合数问题(卢卡斯定理,动态规划) 题面 "UOJ" 题解 数据范围很大,并且涉及的是求值,没法用矩阵乘法考虑。 发现的限制是,是一个质数,那么在大组合数模小质数的情况下可以考虑使用卢卡斯定理。 卢卡斯定理写出来是$Lucas(n,m)=Lucas(n/K,m/K) L
阅读全文
摘要:【BZOJ4870】组合数问题(动态规划,矩阵快速幂) 题面 "BZOJ" "洛谷" 题解 显然直接算是没法做的。但是要求的东西的和就是从个物品中选出模意义下恰好个物品的方案数。的范围这么大,往快速幂的方面靠。设表示从前个物品中选了模意义下$j
阅读全文
摘要:AtCoder Grand Contest 009 A Multiple Array 翻译 "见洛谷" 题解 从后往前考虑。 cpp include include using namespace std; define ll long long define MAX 100100 inline i
阅读全文
摘要:【BZOJ5138】[Usaco2017 Dec]Push a Box(强连通分量) 题面 "BZOJ" "洛谷" 题解 这题是今天看到萝卜在做然后他一眼秒了,我太菜了不会做,所以就来做做。 首先看完题目,是不是有点像的那道华容道? 所以类似的考虑状态,表示当前箱
阅读全文
摘要:AtCoder Grand Contest 008 A Simple Calculator 翻译 有一个计算器,上面有一个显示按钮和两个其他的按钮。初始时,计算器上显示的数字是,现在想把这个数字给变成。两个按钮的作用分别是让这个数加一和把这个数取反。问最少的按按钮的次数。 题解 神仙特判
阅读全文
摘要:【Vijos1404】遭遇战(最短路) 题面 "Vijos" 题解 显然可以树状数组之类的东西维护一下。这里考虑一种最短路的做法。 首先对于一个区间,显然可以连边,那么最终的问题转化成了从时刻到时刻的最短路。发现显然并不在意一个时间可以被个线段覆盖
阅读全文
摘要:【Luogu1344】追查坏牛奶(最小割) 题面 "洛谷" 题解 裸的最小割,但是要求边的数量最小。 怎么办呢?给每条边的权值额外加上一个很大的值就了。 cpp include include include using namespace std; define ll long long defi
阅读全文
摘要:【UOJ 67】新年的毒瘤(Tarjan) 题面 "UOJ" 题解 一棵个节点的树显然有条边,在本题中意味着删去一个点之后还剩下条边。那么找到所有度数为的点就好了。但是因为是一棵树,所以联通,所以割点不是答案。 cpp include include us
阅读全文
摘要:【BZOJ4883】棋盘上的守卫(最小生成树) 题面 "BZOJ" 题解 首先行列的棋盘显然把行列拆开考虑,即构成了一个个点的图。我们把格子看成边,那么点,看成与的一条边,方向自己随便定。那么我们的任务就是选择一些边,使得所有点的入度至少为,既然
阅读全文
摘要:【BZOJ3745】Norma(CDQ分治) 题面 "BZOJ" "洛谷" 题解 这种问题直接做不好做,显然需要一定的优化。考虑分治。 现在唯一需要考虑的就是跨越当前中间节点的所有区间如何计算答案了。 从开始向左枚举左端点,考虑右端点的贡献。那么我们在右侧记录两个指针,
阅读全文
摘要:AtCoder Grand Contest 007 A Shik and Stone 翻译 "见洛谷" 题解 傻逼玩意 D Shik and Game 翻译 (什么傻吊题面) 有一个数轴,初始情况下玩家在位置,出口在位置,数轴上还有只熊,你只要到了它的位置,再过个单位时间它所
阅读全文
摘要:【BZOJ3232】圈地游戏(分数规划,网络流) 题面 "BZOJ" 题解 很神仙的一道题。 首先看到最大化的比值很容易想到分数规划。现在考虑分数规划之后怎么计算贡献。 首先每条边的贡献就变成了,这个显然啊。考虑一个封闭图形如何计算答案。 发现被计算入答案的边一定是一侧有一个格子被圈进
阅读全文
摘要:【BZOJ5281】Talent Show(分数规划) 题面 "BZOJ" "洛谷" 题解 二分答案直接就是裸的分数规划,直接跑背包判断是否可行即可。
阅读全文
摘要:【CF949D】Curfew(贪心) 题面 "CF" "洛谷" 破池姐姐翻译好强啊 题解 ~~今天菊开讲这题,我大力猜想一波说肯定从中间有个分界线,他还说可能是假的~~ 大力贪心就好了,从两边往中间考虑,只要这个房间能够装满就装满。
阅读全文
摘要:【CF888E】Maximum Subsequence(meet in the middle) 题面 "CF" "洛谷" 题解 把所有数分一下,然后做就好了。 一侧的数正序,另一侧倒序,这样子指针单调就做完了。
阅读全文
摘要:【CF912E】Prime Game(meet in the middle) 题面 "CF" 懒得翻译了。 题解 一眼题。 分别爆算所有可行的两组质数,然后二分答案,扫一下就好了。 cpp include include in
阅读全文
摘要:【BZOJ3872】Ant colony(二分,动态规划) 题面 又是权限题。。。 Description There is an entrance to the ant hill in every chamber with only one corridor leading into (or ou
阅读全文
摘要:【BZOJ2067】SZN(二分,动态规划,贪心) 题面 "权限题额" Description String Toys joint stock 公司需要你帮他们解决一个问题. 他们想制造一个没有环的连通图模型. 每个图都是由一些顶点和特定数量的边构成. 每个顶点都可以连向许多的其他顶点.一个图是连通
阅读全文
摘要:AtCoder Grand Contest 006 吐槽 这套题要改个名字,叫神仙结论题大赛 A Prefix and Suffix 翻译 给定两个串,求满足前缀是,后缀是,并且长度至少为的最短串串长。 题解 暴力枚举和的重叠部分长度,然后直接 E Rot
阅读全文
摘要:【agc006f】Blackout(神仙题) 翻译 给定一个的网格图,有些格子是黑色的。如果都是黑色的,那么也会被染黑,求最终黑格子数量。 题解 网格图我们显然是存不下的,把它转化成图来考虑。于是题目变成了:给定一个个点条边的图,如果$x
阅读全文
摘要:【BZOJ2830/洛谷3830】随机树(动态规划) 题面 "洛谷" 题解 先考虑第一问。 第一问的答案显然就是所有情况下所有点的深度的平均数。 考虑新加入的两个点,一定会删去某个叶子,然后新加入两个深度为原先叶子的点。 那么新加入的叶子的深度的期望是未加入之前的期望+1,假设为$
阅读全文
摘要:【BZOJ1922】大陆争霸(最短路) 题面 "BZOJ" "洛谷" 题解 最短路变形题。 定义表示最短路,表示最早可以进入当前点的时间。显然,其中有着当前点的结节发生器。 那么Dijkstra跑一遍就好了。 注意一下这题边是单向的
阅读全文
摘要:AtCoder Grand Contest 005 A STring 翻译 给定一个只包含的字符串,如果出现了连续的,就把他删去,然后所有位置前移。问最后剩下的串长。 题解 模拟栈,和维护括号一样的。 cpp include include using namespace std;
阅读全文
摘要:【BZOJ2724】蒲公英(分块) 题面 "洛谷" 谴责权限题的行为 题解 分块什么的都不会,根本就没写过几次。 复杂度根本不会分析,吓得我赶快来练练。 这题要求的是区间众数,显然没有什么很好的主席树之类的方法。 再加之这个数据范围很像,所以我们来分块,假设块大小为$\sq
阅读全文
摘要:题面 "BZOJ" "洛谷" 题解 和 "这题" 区别不是很大吧。 基本上拿过来改一下就做完了。 cpp include include include include include include include include include using namespace std; defi
阅读全文
摘要:【BZOJ4774】修路(动态规划,斯坦纳树) 题面 "BZOJ" 题解 先讲怎么求解最小斯坦纳树。 先明白什么是斯坦纳树。 斯坦纳树可以认为是最小生成树的一般情况。最小生成树是把所有给定点都要加入到联通块中。而斯坦纳树不一样,斯坦纳树只需要把指定点集中的所有点全部加入到联通块中,并且允许使用点集以
阅读全文
摘要:【BZOJ1864】三色二叉树(动态规划) 题面 "BZOJ" 题解 首先把树给构出来。 设表示当前节点,是否是绿色节点的子树中最大/最小的绿色节点的个数和。 转移很显然。 cpp include include include include include inclu
阅读全文
摘要:【LOJ6089】小Y的背包计数问题(动态规划) 题面 "LOJ" 题解 神仙题啊。 我们分开考虑不同的物品,按照编号与的关系分类。 第一类: 即需要考虑所有的情况,那么设表示前个物品装了体积的方案数。 显然$f[i][j]
阅读全文
摘要:【BZOJ4247】挂饰(动态规划) 题面 "BZOJ" 题解 设表示前个物品中还剩下个挂钩时的最大答案。 转移显然是一个背包,要么不选: 要么选,那么首先这个物品至少要占用一个挂钩,然后它会贡献$a[
阅读全文
摘要:【BZOJ3202】项链(莫比乌斯反演,Burnside引理) 题面 "BZOJ" "洛谷" 题解 首先读完题目,很明显的感觉就是,分成了两个部分计算。 首先计算本质不同的珠子个数,再计算本质不同的项链个数。 前面一个部分和相关,一种莫比乌斯反演的感觉。 后面一个部分出现了旋转操作,要求本
阅读全文
摘要:【HDU5469】Antonidas(点分治,字符串哈希) 题面 "HDU" "Vjudge" 题解 啊哈?什么垃圾一眼点分治+Hash判断,哈哈哈哈哈,让我来码码码。 诶,怎么WA了。改改改改改。 诶,怎么很对啊,去网上蒯一个标程来拍拍拍。 诶,怎么拍不WA啊,让我来人工检测一波啊哈哈哈哈。 感觉
阅读全文
摘要:AtCoder Grand Contest 004 A Divide a Cuboid 翻译 给定一个的立方体,现在要把它分成两个立方体,求出他们的最小体积差。 题解 如果有一条边是偶数显然可以均分,否分沿着最长边隔开。 cpp include using namespace std;
阅读全文
摘要:AtCoder Grand Contest 003 A Wanna go back home 翻译 告诉你一个人每天向哪个方向走,你可以自定义他每天走的距离,问它能否在最后一天结束之后回到起点。 题解 什么逗逼东西。。。 D Anticube 翻译 给定个数,要求选出最多的数,满足任意两个数的
阅读全文
摘要:AtCoder Grand Contest 002 A Range Product 翻译 告诉你,求是正数还是负数还是零。 题解 什么鬼玩意。 D Stamp Rally 翻译 给定一张图,每次询问从选择两条路径,要求被经过的点数恰好为,求
阅读全文
摘要:~~先空着,等停课了再开始写。~~ 诸位好,我是yyb。现在显然已经不再是高一的小蒟蒻了,已经升级为了高二的菜鸡了 现在已经不能再每天划划水切切题了,毕竟......已经高二了,所有的机会从高一的两倍全部除了个二。 怎么说呢?一步错,步步错。虽说比起去年这个时候有了很多的进步,然而留给我出错的机会现
阅读全文
摘要:AtCoder Grand Contest 001 A BBQ Easy 翻译 给你个数,需要两两配对成对,每对的权值定义为两个数的较小值,求最大权值和。 题解 排序即可。 E BBQ Hard 翻译 "洛谷" 翻译其实有点问题。 应该是 $$\sum_{i=1}^n\sum_{j=i
阅读全文
摘要:【BZOJ1455】罗马游戏(左偏树) 题面 "BZOJ" 然而权限题。 题解 左偏树模板题。 cpp include include include include include include include using namespace std; define ll long long d
阅读全文
摘要:【BZOJ4242】水壶(克鲁斯卡尔重构树,BFS) 题面 "BZOJ" 然而是权限题。 Description JOI君所居住的IOI市以一年四季都十分炎热著称。 IOI市是一个被分成纵H 横W块区域的长方形,每个区域都是建筑物、原野、墙壁之一。建筑物的区域有P个,编号为1...P。 JOI君只能
阅读全文