10 2019 档案

摘要:前置题目 (~~双倍经验~~): "[洛谷P3403]跳楼机" 题目 求$[l,r]$中有多少个b可以使得方程$\sum{a_ix_i = b}$有非负整数解$(n\leq 12,l,r\leq 10^{12})$ 思路 问题等价于求$solve(r) solve(l 1)$ 考虑怎么求$solve 阅读全文
posted @ 2019-10-31 17:18 擅长平地摔的艾拉酱 阅读(131) 评论(0) 推荐(0)
摘要:题意 给一个$n \times 20$的棋盘,上面有一些棋子;对于一个棋子,能将它向右移动一格,如果右边有棋子,则向右跳到第一个空格,如果右边没有空格,则不能移动这个棋子,如果所有棋子都不能移动,那么将输掉这场比赛 判断先手必胜或者必败 思路 观察白格子的个数,设一段棋子右边的白格子个数为其层数,将 阅读全文
posted @ 2019-10-31 15:28 擅长平地摔的艾拉酱 阅读(120) 评论(0) 推荐(0)
摘要:题意 给出一个字符串后缀排序之后的数组$sa_i$,求原字符串(字典序最小),无解输出 1 思路 显然从$rk_1$开始填字符是可以保证字符单调不降的 找到$sa$值相邻的两个位置,现在需要知道$rk_i$和$rk_{i+1}$是否可以填相邻字符;当它们填相同字符时需要比较后一位,如果相对关系相同则 阅读全文
posted @ 2019-10-31 12:04 擅长平地摔的艾拉酱 阅读(141) 评论(0) 推荐(0)
摘要:题意 有一个长为$n$的01序列,每次等概率从$[1,len]$中抽取一个$x$,可以选择从右向左或是从左往右的第$x$个数字 取走 ,求$k$次操作后取走1的期望个数$(k\leq n\leq 30)$ 思路 ~~然而就是直接状态压缩~~ 以24为分界线,24步以内用状态压缩;24步以上可以发现状 阅读全文
posted @ 2019-10-31 07:38 擅长平地摔的艾拉酱 阅读(169) 评论(0) 推荐(0)
摘要:题意 有一棵树,每个节点$i$有一定的容量$k_i$(只能装$k_i$个颜色);有$m$次操作,每次给$x$到$1$路径上的所有点加上一个颜色$c$;修改操作完成后询问每个节点有多少种不同的颜色$(n,m,k_i \leq 10^5)$ 思路 30pts数据小可以直接暴力跳 另外40pts有$k_i 阅读全文
posted @ 2019-10-30 08:34 擅长平地摔的艾拉酱 阅读(262) 评论(0) 推荐(0)
摘要:题意 一本有n道题的练习册,katarina大佬每天都会做k道题。 第一天做第1~k题,第二天做第2~k+1题……第n k+1天做第n−k+1~n道题。 每道题有它的难度值,假设今天katarina大佬做的题目中最大难度为t,那么今天katarina大佬的劳累度就是$w_t$,做完这本书的劳累值就是 阅读全文
posted @ 2019-10-30 07:54 擅长平地摔的艾拉酱 阅读(210) 评论(0) 推荐(0)
摘要:"题目" 求1~n的全排列数目,使得对于$i\geq 3$,$a_{i},a_{i 1}$的大小关系与$a_{i 1},a_{i 2}$的大小关系不同 思路 题目还有另外一种格式:求一种全排列,使得这个排列要么满足奇数项的高度比相邻位置都大, 要么满足偶数项的高度比相邻位置都大. 设$dp_{i,j 阅读全文
posted @ 2019-10-28 20:57 擅长平地摔的艾拉酱 阅读(110) 评论(0) 推荐(0)
摘要:题意 求$\sum_{i=0}^{k} {C_n^i}\% 2333$ $,(n,k\leq 10^{18})$ 思路 如果直接套卢卡斯还是比较容易想到分块求解的 由$C_n^i = C_{n\%p}^{i\%p} \times C_{n/p}^{i/p}$可知,$i\%p$相同的组合数另一部分分别 阅读全文
posted @ 2019-10-25 19:43 擅长平地摔的艾拉酱 阅读(127) 评论(0) 推荐(0)
摘要:题意 给一个数列,支持区间修改和区间求和,区间修改操作给区间第$i$位加上$fib_i$ 思路 如果使用线段树的话,显然区间和可以合并,考虑两个问题: 1. 如何化区间修改为快速的打标记 2. 打标记之后如何快速计算这个标记的贡献 令$f$表示斐波那契数列,定义广义斐波那契数列:$g_i=a\tim 阅读全文
posted @ 2019-10-25 09:31 擅长平地摔的艾拉酱 阅读(222) 评论(0) 推荐(0)
摘要:题意 给一个范围[L,R],求满足$L\leq n \leq R$ 且 $L\leq rev(n) \leq R$的$n$的个数,其中$rev(n)$表示将$n$翻转$(123 321)$,多组询问$(L,R\leq 2^64 1)$ 思路 长这样的计数问题,没什么悬念考虑数位DP 只设$f_{i, 阅读全文
posted @ 2019-10-24 21:38 擅长平地摔的艾拉酱 阅读(216) 评论(0) 推荐(0)
摘要:"题目" 求解高次同余方程$k^{x} \equiv 1(mod$ $m)$,不保证$m$为质数 思路 ~~我会扩展BSGS~~ 有个欧拉定理$k^{\varphi(m)} \equiv 1(mod$ $m)$,可知答案一定为$\varphi(m)$的因子 桥豆麻袋,为什么可以使用欧拉定理?说好的$ 阅读全文
posted @ 2019-10-24 20:24 擅长平地摔的艾拉酱 阅读(109) 评论(0) 推荐(0)
摘要:"题目" 求$1$到$2n$的全排列种类数,满足奇数项和偶数项分别单增,任意$a_{2i 1} define N 2000005 define Min(x,y) ((x)(y)?(x):(y)) using namespace std; typedef long long ll; int n,sum 阅读全文
posted @ 2019-10-24 20:05 擅长平地摔的艾拉酱 阅读(117) 评论(0) 推荐(0)
摘要:题意 求自然数中,第$k$个不含平方因子的数 思路 这道题的做法还挺多的(打表,二分,反演...) 我用的做法是二分+容斥 显然答案满足二分性,假设当前检验的数为$n$ 没有平方因子的数=所有数 一个质数平方的因子的倍数+两个质数乘积平方的倍数 三个的....... 对于一个数$i^2$,可以发现$ 阅读全文
posted @ 2019-10-24 10:34 擅长平地摔的艾拉酱 阅读(126) 评论(0) 推荐(0)
摘要:题意 给一颗树,从1节点出发,走每条边的概率相同且耗时为1,求每个点第一次被遍历到的期望时间($t_1=1$) 思路 在树上只有两种移动方式:从儿子到父亲,从父亲到儿子 假设从$rt$走到$v$的期望代价为$dow_i$,从$i$走到$rt$的期望代价为$val_i$ 假设从$rt$转移到$v$,$ 阅读全文
posted @ 2019-10-24 07:59 擅长平地摔的艾拉酱 阅读(119) 评论(0) 推荐(0)
摘要:题意 给一个DAG,多次询问,每次给定$k$个点,求1到这些点的必经点的交集大小 思路 支配树裸题,建好DAG的支配树后$k$个点LCA的深度即为答案 Code cpp include define N 100005 using namespace std; int n,m,q; int rd[N] 阅读全文
posted @ 2019-10-24 07:43 擅长平地摔的艾拉酱 阅读(178) 评论(0) 推荐(0)
摘要:"题目" 给一个方程和一些限制,要求一些数必须小于$a_i$,一些数必须大于$b_i$,求不同的正整数解的数量 思路 扩展卢卡斯定理模板题 对于第二类限制$x_i\geq a_i$,将$m$减去$a_i 1$,即$x_i\geq 1$ 对于第一类限制$x_i\leq a_i$,由于限制数很少可以容斥 阅读全文
posted @ 2019-10-22 15:03 擅长平地摔的艾拉酱 阅读(155) 评论(0) 推荐(0)
摘要:题意 有$n$个灯泡,除了$k$个之外都是亮的,有$m$种长度的区间翻转,求最少次数使得所有所有灯泡都亮,保证有解,$(n\leq 40000,k\leq 8,m\leq 64)$ 思路 可以发现区间翻转之后区间内的 相对 关系不变; 第一步:将区间翻转转换成单点翻转?考虑差分,令$pre_i$表示 阅读全文
posted @ 2019-10-22 12:42 擅长平地摔的艾拉酱 阅读(134) 评论(0) 推荐(0)
摘要:"题目" 思路 好题+细节题 答案字典序要求最小,所以考虑倒叙枚举,对于当前一组需要尽量多的加东西,因为后面组选的数越多,前面的选择机会越多 化 枚举序列 为 枚举值域 ,这是这道题的关键 $K=1$:倒叙枚举到$i$,此时只需判断当前组中的数是否有加$a_i$等于完全平方数的;可以$O(n)$枚举 阅读全文
posted @ 2019-10-21 21:38 擅长平地摔的艾拉酱 阅读(177) 评论(0) 推荐(0)
摘要:题意 小秋想要知道有多少个数组$a_1,a_2,...,a_k$满足$gcd(a_1,a_2,...,a_k)=d$并且$lcm(a_1,a_2,...a_k)=n$,两个数组视为不同,只要存在一个位置两个数不同 思路 ~~虽然这道题并不是原创题~~ 将$d,n$质因数分解,对于每一个质因子,至少一 阅读全文
posted @ 2019-10-20 18:37 擅长平地摔的艾拉酱 阅读(136) 评论(0) 推荐(0)
摘要:"题目" 解法1 发现两个数$x,y$的关系只有两种,分别是: 1. 选择$x$就可以完全包含选择$y$,如选了2就完全包含选择6的作用 2. 只要没有包含关系,那么两个数就无法替代对方 所以有些数必须选,除此之外的数 无关紧要 ,只需要求出必须选的数即可,设它为$m$,可以用欧拉筛或者埃氏筛得到 阅读全文
posted @ 2019-10-17 15:23 擅长平地摔的艾拉酱 阅读(131) 评论(0) 推荐(0)
摘要:"题目" 思路 显然状态压缩DP,先设$f_{i,S}$表示到了第$i$轮,状态为$S$时的最大价值,用刷表法正推求解; 然后就发现有些问题,因为就连题目都举了个栗子说明你当前的决策需要考虑未来的情况,这样会有后效性 所以需要逆推求解,设$f_{i,S}$表示还剩$i$论,状态为$S$时的最大价值, 阅读全文
posted @ 2019-10-17 14:17 擅长平地摔的艾拉酱 阅读(84) 评论(0) 推荐(0)
摘要:[TOC] $T1:facsum$ 题目 Mr.Hu最近偶得一函数$f(n) = n^m \times \sum_{d|n}{\sigma_0(d)\mu(\frac{n}{d})\frac{n}{d}}$ 求$F(n) = \sum_{i=1}^n{f(i)},(n\leq 10^7,m\leq 阅读全文
posted @ 2019-10-16 19:27 擅长平地摔的艾拉酱 阅读(178) 评论(0) 推荐(0)
摘要:题意 求1~n的全排列$P_i$的个数,满足对于$i\geq 2$,有$P_i P_{i/2}$ 思路 随手画个图就可以发现问题是求大小为$n$的小根堆的个数 由于左右子树互不影响,直接DP即可,设$dp_{i}$表示以$i$为根的小根堆的个数,有$dp_i = dp_{i 2} dp_{i 2+1 阅读全文
posted @ 2019-10-16 19:15 擅长平地摔的艾拉酱 阅读(110) 评论(0) 推荐(0)
摘要:题意 给定一个$n m$的网格,计算三点都在格点上的三角形共有多少个(显然三点不能共线) 思路 答案显然为全集 不满足条件的三角形 全集为$C(n m,3)$ 横行/竖行:$C(m,3) n+C(n,3) m$ 本题难点在于怎么处理斜行 一条斜边可以由一条横边+一条竖边表示,所以枚举竖边和横边的长度 阅读全文
posted @ 2019-10-16 19:08 擅长平地摔的艾拉酱 阅读(134) 评论(0) 推荐(0)
摘要:题意 有一些书放到三层书架上,满足每层至少一本,最小化 $$S=\left(\sum_{j=1}^3 \max_{i \in S_j} h_i\right) \times \left(\max_{j=1}^3 \sum_{i \in S_j} t_i\right)$$ 其中$n \leq 70,h_ 阅读全文
posted @ 2019-10-15 19:32 擅长平地摔的艾拉酱 阅读(183) 评论(0) 推荐(0)
摘要:题意 求$[1,n!]$以内与$m!$互质的数的个数,答案对$mod$取模 思路 ~~不止沙拉公主,我也很困惑啊qwq~~ 由欧几里得定理可知,对于$x m!$,有$gcd(x,m!)=gcd(x\% m!,m!)$,所以只需要求出$m!$以内的与它互质的数即可,这个数为$\varphi(m!)$ 阅读全文
posted @ 2019-10-15 19:19 擅长平地摔的艾拉酱 阅读(143) 评论(0) 推荐(0)
摘要:"题意" 给一个数N,求它经过多少次取$phi$可以变成1 思路 由于只有$\varphi_{1}$和$\varphi_{2}$为1,所以原数变成1的过程必经2,由 $$\varphi(\prod_{i = 1}^m p_i^{q_i}) = \prod_{i = 1}^m (p_i 1) p_i^ 阅读全文
posted @ 2019-10-15 19:02 擅长平地摔的艾拉酱 阅读(160) 评论(0) 推荐(0)
摘要:"题目" 思路 设$dis[i]$表示i到山脚的距离,$sum[i]$表示前i个木材的重量和,$tot$为不建锯木厂的代价 假设分别建在$i,j$位置$(i dis[i]$ 维护上凸壳即可 Code cpp include define N 20005 using namespace std; in 阅读全文
posted @ 2019-10-14 21:09 擅长平地摔的艾拉酱 阅读(114) 评论(0) 推荐(0)
摘要:"题目" 思路 看到题目和数据范围想到设$f_{i,j}$为前$i$天,当前有$j$股股票时的最大收益 容易证明,$j$固定时,$f_{i,j}$随$i$增加而单调不降(即你可以不买不卖维持现状),那么$f_{i,j}$可以从$f_{i w 1,k}$转移而来 $k j$时为卖,两者受到$as$和$ 阅读全文
posted @ 2019-10-14 18:10 擅长平地摔的艾拉酱 阅读(104) 评论(0) 推荐(0)
摘要:题意 有n个点$(x,y)$,求一个在$x$轴上的最小区间,使得它包含的所有点中的$y$的极差至少为$d$,$x,y,d\leq 10^6$ 思路 将点按$x$排序,显然$2 pointers$,需要随时维护一个滑动窗口的最大值和最小值,显然单调队列(也可以用离散化+ST表或者线段树,不过多了个lo 阅读全文
posted @ 2019-10-14 17:35 擅长平地摔的艾拉酱 阅读(154) 评论(0) 推荐(0)
摘要:"题目" 解法 ~~2 SAT板子题~~ 如果没有x这个字符的话,问题变成每个点都有两种选法,有一些限制,显然是个2 SAT问题,设拆出来的两个点分别为$i$和$i'$,则对于限制$x y$,连边$(x,y),(y',x')$,跑tarjan即可(2 SAT基操嘛。) 即使现在有了x这个字符,我们也 阅读全文
posted @ 2019-10-12 11:46 擅长平地摔的艾拉酱 阅读(120) 评论(0) 推荐(0)
摘要:题意 一个图是平面图当且仅当所有的边两两不相交(端点除外),现在给定一个带环的图,判定它是不是平面图;多组数据 思路 考虑不在环上的边,连接两点的边无非只有两种连法,走环里面或外面,两条边如果可能会有相交部分,就只能一个走外面一个走里面,这显然可以是一个2 SAT问题 将边当作节点,一条边两个点,分 阅读全文
posted @ 2019-10-12 09:58 擅长平地摔的艾拉酱 阅读(164) 评论(0) 推荐(0)
摘要:题意 给一个范围$[0,n]$,有两种变换方式,$+k$或者给定的$m$个$x y$,但必须保证变换前后的数始终在范围内,给一个数$x$,求出它一直变换下去(注意不能得到了一个数之后返回上一步)可以得到的所有数的和的最大值$(n\leq 10^8 , m\leq 10^5 , k\leq n)$,多 阅读全文
posted @ 2019-10-11 16:41 擅长平地摔的艾拉酱 阅读(196) 评论(0) 推荐(0)
摘要:"题目" 思路 做过 "peaks" 的话这道题简直就水的不行($peaks$弱化版?) 先从1向所有点跑一次最短路求出$dis$(此题略卡$spfa$),按照海拔从大到小做出$kruskal$重构树,$dfs$一遍预处理出每个点对应的子树的最小$dis$,对于每个海拔限制,倍增找到深度最小的满足条 阅读全文
posted @ 2019-10-11 07:16 擅长平地摔的艾拉酱 阅读(122) 评论(0) 推荐(0)
摘要:题目 有两条蛇(1号蛇和2号蛇)在n行m列的地图上,地图上有障碍物。一条蛇碰到蛇身/障碍物/边界就会死。蛇身会不断长长——可以理解为蛇尾位置不会变,蛇只会向前伸展不会缩尾巴。两条蛇都绝顶聪明,如果自己能赢,一定会尽量快地赢;如果自己会输,一定会死得尽量晚。给出初始局面,两蛇轮流走,每次可以且必须向上 阅读全文
posted @ 2019-10-10 21:45 擅长平地摔的艾拉酱 阅读(698) 评论(0) 推荐(0)
摘要:这道题可以看做是 "[SHOI2008]堵塞的交通" 的加强版,由于~~形同模拟~~不同人的写法差别很大,强烈建议理解了原理之后自己独立写 题意 给一个$2 m$的网格图,每次操作支持修改一条边的权值,和查询$[L,R]$(含)的最小生成树 思路 如果做过上面那道题就很容易知道这道题是考(毒瘤的)线 阅读全文
posted @ 2019-10-09 21:01 擅长平地摔的艾拉酱 阅读(222) 评论(0) 推荐(0)
摘要:题意 有n个房间分别有$a_i$个人$(a_i\leq 7)$,通过移动人的操作使得一个房间只能有$0,4,7$个人中的一种,花费1单位代价将一个人移动一格,无解输出 1 样例输入 7 1 0 7 0 0 0 3 样例输出 6 思路 DP直接搞,开始想的是用$dp_{i,j}$记录前$i$个房间都合 阅读全文
posted @ 2019-10-09 09:13 擅长平地摔的艾拉酱 阅读(135) 评论(0) 推荐(0)
摘要:本来以为之前写过这个方法,今天又考了一道模板题,于是就记录一下 悬线法是求解一类极大子矩阵问题的DP解法(~~maybe~~) 例题:给一个01矩阵,求最大的一个子矩阵,使得该子矩阵全为1 考试有人想出了$O(n^2log^2n)$的二分套二分做法,在此表示膜拜(即二分面积,枚举面积的约数) 从暴力 阅读全文
posted @ 2019-10-08 15:22 擅长平地摔的艾拉酱 阅读(209) 评论(0) 推荐(0)
摘要:题意 给一颗树和一些操作,每次操作修改一个点的标记(0/1),求从一个标记点出发走过所有标记点最后回到起点的最短路径长度 思路 由于最后要回到起点,整条路径构成了一个环,所以起点无所谓;一个点向离它近的点走,这在树上表示为一个点向$dfs$序离它近的点走;所以将所有标记点按照dfs序排序,路径即为$ 阅读全文
posted @ 2019-10-07 21:09 擅长平地摔的艾拉酱 阅读(152) 评论(0) 推荐(0)
摘要:"题意" 思路 可以算作“神奇的解法”一类了。。。 做法很简单,看你想不想的到而已,对边权排序,从小到大枚举边,以这条边为最短边做最小生成树就行了 Code 阅读全文
posted @ 2019-10-06 21:14 擅长平地摔的艾拉酱 阅读(116) 评论(0) 推荐(0)
摘要:题意 给定$n$个时间,每个时间有六个权值,求恰好有$k$个权值对应相等的时间对的对数 思路 由于权值数量很少,可以枚举哪些权值相等,然后将每个时间的对应权值拿出来hash一遍,就可以得到有多少对时间的这些权值相同 但是这样显然会算重复,比如有四个权值相同的时间对它的三个权值也会相同,于是可以开始容 阅读全文
posted @ 2019-10-06 19:41 擅长平地摔的艾拉酱 阅读(170) 评论(0) 推荐(1)
摘要:题意 求一张图中的割点,且该割点可以分开$1$和$n$($1$和$n$除外) 思路 神奇的思路,值得思考 在求割点的基础上,题目要求要将$1$和$n$分开;我们随便找一条从$1$到$n$的 简单路径 ,将其打上$flag$标记,有结论:一个点$rt$($1$和$n$除外)是满足条件的点,当且仅当在$ 阅读全文
posted @ 2019-10-04 20:59 擅长平地摔的艾拉酱 阅读(144) 评论(0) 推荐(0)
摘要:题意 消灭一个魔物有两种方法,消耗$a_i$代价将它彻底消灭,或者消耗$b_i$代价将它变成多个其他魔物,求消灭1号魔物的最小代价 思路 SPFA:一个点的最短路径被更新后它的儿子节点才可能被更新,于是将该点入队,这样做减少了没有更新的无用枚举 对于这道题,设$dis_i$表示一个$i$魔物被彻底消 阅读全文
posted @ 2019-10-04 19:55 擅长平地摔的艾拉酱 阅读(133) 评论(0) 推荐(0)

/*取消选中*/