08 2018 档案
摘要:"洛谷" 一句话题意: 每个武器有两种属性,每种武器只能选择一种属性,从属性1连续递增才算攻击,求最大连续攻击次数。 因为同学告诉我这是二分图最大匹配,自然就往那个方向去想。 那么怎么建图呢? 每个武器只能用一次,所以武器占二分图的一边,另一边放属性。 每个武器对应的属性之间连边。 因为要从属性1开
阅读全文
摘要:"洛谷" 题意:要求在限定油耗内,求最小花费的最大值。 求最小值最大很容易想到二分答案。所以我们往二分的方向去想。 我们二分一个费用,然后要保证到终点时满足限定油耗,所以跑最短路。 不过松弛条件要改一下: 增加条件,即:$cost[to] cpp include using namespace st
阅读全文
摘要:"洛谷" 套路题,分层图(然鹅我并不会,是看了题解才打出来的)。 因为k值很小,所以我们可以建k+1张图。 对于一条边e,起点为u,终点为v,我们可以把上一层图的u与这一层图的v相连,边权为0,表示使用一次免费的机会。而这一层图的u也向v连边,边权为花费。 因为只有k+1个图,所以图与图之间只有k个
阅读全文
摘要:"洛谷" 这个题面很有意思,像我这样的菜鸡,完全不需考虑婚姻的稳定 问题。 tarjan裸题,直接讲算法吧: 原配夫妻之间分别连一条边,小情人之间反向连边。 这时候我们会发现一个性质,如果婚姻稳定,那么夫妻之间肯定不在一个强连通分量中,反之,在一个强连通分量中的夫妻就是Unsafe的。 代码: cp
阅读全文
摘要:"洛谷" 最近刚刚学的2 sat,就刷了这道裸题。 2 sat问题一般是用tarjan求的,当出现(x,y)或(!x,y)或(x,!y)三种选择时,我们可以把!x y,!y x连边。 然后直接tarjan。 比如这一题,设汉菜为是,满菜为非,直接按上面所述连边跑tarjan,判断是与非是否在同一强连
阅读全文
摘要:"洛谷" 首先,看到$(\frac{(b+\sqrt{d})}{2})^n$,很快能够想到一元二次方程的解$\frac{ b\pm\sqrt{\Delta}}{2a}$。 所以可以推出,$\frac{(b+\sqrt{d})}{2}$和$\frac{(b \sqrt{d})}{2}$是$x^2 bx
阅读全文
摘要:"洛谷" 这是一道组合数学题。 对于一个长为n的序列,首先我们要选m个使之稳定$C^{m}_{n}$。 且要保证剩下的序列不稳定,即错排$D_{n m}$。 所以答案就是:$$ANS=C^{m}_{n}+D_{n m}$$ 再看看数据范围:n最大$10^6$,错排好办,直接递推: $$D[i]=(i
阅读全文
摘要:"洛谷" 361行代码的由来 数据分治大发好啊~ NOI的签到题,可怜我在家打了一下午才搞了80分。 正解应该是kruskal重构树或排序+可持久化并查集。 我就分点来讲暴力80分做法吧(毕竟正解我也没太懂)~ 前6个点 这6个点有两种做法: 法1:最短路。 这6个点都是离线的,而且只有一种海拔,所
阅读全文
摘要:"洛谷" 这是今天的考试题,我来发一波~ 看L和R的范围,显然不能一个一个加,这样会有很多重复情况,会超时,只要看该数有多少个后导0,就把L加上10的多少次方。 很容易可以想到价格后面尽可能多0, 在此基础上需要尽量最后一个数字是5。 那么我们可以想到每次更新的时候尽量跳$10^N$。 用一重whi
阅读全文
摘要:"洛谷" 这题没人用分块吧? 好像分块比较麻烦,但是我太弱了,不会莫队,就打了一个比较巧妙的分块。 1.build函数。 还是像普通分块一样的写,只是我们需要预处理两个数组。 $f[i][j]$表示从开始到第$i$块,颜色为$j$的颜色有多少个(前缀和)。 这个东西很好处理。 cpp include
阅读全文
摘要:"洛谷" 这道题目其实是最短路裸题。 首先看到题目,要求的到“被占点”距离不大于S的点,自然想到了以“被占点”为源点,求一遍最短路,处理出“危险点”。 可是问题来了,“被占点”有k个,总不能求k次最短路吧,于是我就想到,将所有“被占点”归纳在0这一个外加点上,视作一个点,当“被占点”们与其他点连边时
阅读全文
摘要:"洛谷" 题解里面好像都是压位什么的, 身为蒟蒻的我真的不会, 所以就来谈谈我的30颗线段树蠢方法吧! 这题初看没有头绪。 然后发现颜色范围好像只有30; 所以,我就想到一种$sao$操作,搞30颗线段树。 每颗线段树代表一种颜色。 那么对于题中的两种操作: 1.修改。我们for循环扫一遍所有颜色,
阅读全文
摘要:最近学了矩阵,kzj大佬推荐了我这一道 "题目" 。 乍一眼看上去,没看出是矩阵,就随便打了一个暴力,30分。 然后仔细分析了一波,发现蛮简单的。 ~~结果全wa了,先看看下面的错误分析吧!~~ 首先,设f[n]为最终答案,易得出$$ f[n]=f[n 1] 10+n$$ 然后魔改一下:$$ f[n
阅读全文
摘要:今天, "kzj" 大佬教了我矩阵加速。 让我以这篇随笔表示感谢吧! 这是我刷的一道 "题" : 。 就是普通的矩阵加速,只是要注意的是: 直接用乘法会爆long long,可以参考一下 "慢速乘" 。 可以把乘法转换成加法,很好取模。 贴上丑陋的代码吧~ ~~忽略函数名~~ cpp include
阅读全文

浙公网安备 33010602011771号