Loading

07 2019 档案

摘要:题目大意 给你一棵$n$个点的树,有$m$个操作,每次操作将$x$到$y$的路径上的每个点都放入一个颜色为$z$的球。你需要求出最后每个点里个数最多的球是哪种颜色的。 分析 通过树链剖分把树上路径转化为若干区间,把树上问题转化为区间问题,然后结合差分思想,在左端点加上$+z$标记,在右端点$+1$的 阅读全文
posted @ 2019-07-12 21:50 gz-gary 阅读(141) 评论(0) 推荐(0)
摘要:题目大意 一个数$n$被称为优美的数当且仅当其数位能分为两个集合,两集合中数字之和相等。求$[a,b]$中满足优美的数有几个。 $a,b\leq 10^9$ 分析 ~~正解是数位$dp$然而我不会。~~ 由于$a,b$的范围令人垂涎欲滴,考虑分段打表。 首先我们需要一个比较快的判断方法:对于一个数$ 阅读全文
posted @ 2019-07-12 21:42 gz-gary 阅读(140) 评论(0) 推荐(0)
摘要:题目大意 给你一棵$n$个点的树,每个点有一种颜色;现在有$m$个询问,每次询问你$x$到$y$的路径上,若将$a$颜色视作$b$颜色,不同的颜色有几种。 $n\leq 50000,m\leq 100000$ 分析 如果是把问题放到序列上:询问区间$[l,r]$不同的颜色有几种。这个问题有两个已知的 阅读全文
posted @ 2019-07-12 21:29 gz-gary 阅读(186) 评论(0) 推荐(0)
摘要:题目大意 给你一个长度为$n$的序列,有$m$个询问,每个询问查询区间$[l,r]$中不同的数的个数。 $n\leq 50000,m\leq 200000,0\leq a_i \leq 1000000$ 分析 ~~这题显然可以莫队过但是这样AC实在是太没意思了。~~ 考虑用主席树做这题:对于每个前缀 阅读全文
posted @ 2019-07-12 21:27 gz-gary 阅读(167) 评论(0) 推荐(0)
摘要:题目大意 给出一棵$n$个点的树,每条边的权值是1或0,一条路径合法的条件是:路径上存在一个休息点(不能是起点也不能是终点),使得起点到该点路径上0和1的个数相等,该点到终点的路径上0和1的个数也相等。求合法路径条数。 分析 求满足条件的树上路径条数显然是点分治。 考虑分治中心$x$,对于两条路径$ 阅读全文
posted @ 2019-07-11 22:44 gz-gary 阅读(169) 评论(0) 推荐(0)
摘要:题目大意 "题目链接" 给出一个$p$个点$r$条边的有向图,某些边长度给定,某些边长度是一个未知的正整数$x$(都是$x$)。有$q$个询问,每次询问$s$到$t$的最短路长度有几种可能,以及这些可能的长度之和。 分析 可以发现任意一条$s$到$t$的最短路都能表示成$kx+b$的形式;那么我们可 阅读全文
posted @ 2019-07-11 22:29 gz-gary 阅读(172) 评论(0) 推荐(1)
摘要:题目大意 给出一个无向图,一个人会从1号点 沿着最短路 走到n号点(可能有多条路径),而你需要在某些边的一端设置障碍,使他最终不能够到达n号点,求最小代价,并判断方案是否唯一。 分析 首先建出最短路图。我们可以把原来的边$(u,v)$拆成两段:$(u,x)$和$(x,v)$;割掉$(u,x)$的代价 阅读全文
posted @ 2019-07-10 20:52 gz-gary 阅读(193) 评论(0) 推荐(0)
摘要:题目链接: "k d sequence" 题目大意 给一个长度为$n$的序列$a$,要你找一个最长的区间,使得将区间内的数排序以后,最多加$k$个数使它构成公差为$d$的等差数列。长度相同取左端点最靠左的。 $n\leq 200000,k\leq 200000,d\leq 10^9,|a_i|\le 阅读全文
posted @ 2019-07-04 20:53 gz-gary 阅读(261) 评论(0) 推荐(0)
摘要:题意 判断前$n$个小写字母的全排列是否都在给定字符串$S$中作为子序列出现过。 $n\leq 26,|S| \leq 450$ 解析 根据dalao的精确计算,当$n 21$时,$C_{450}^{n}21$的情况可以直接输出"NO"。 对于一般的情况,设$f_s$表示字符串$S$中的一个位置,使 阅读全文
posted @ 2019-07-02 16:27 gz-gary 阅读(297) 评论(0) 推荐(0)
摘要:"题目链接" 题目大意 在$n m$的网格上,一只马在点$(1,1)$,点$(i,j)$可以跳到$(i 1,j+k)$或$(i,j+k)$或$(i+1,j+k)$,其中$k$是一个奇数,求跳到$(n,m)$的方案数。 解析 设: $f_{i,j}$表示跳到$(j,i)$的方案数(为了方便我换了一下$ 阅读全文
posted @ 2019-07-02 15:58 gz-gary 阅读(217) 评论(0) 推荐(0)
摘要:题目大意 给定矩形中的$n$个点,矩形中的任意一个位置被离它最近的点控制,给出起点,求走出这个矩形最少被几个点控制过。 $n \leq 600$ 解析 借用网上这张酷炫的图 可以发现,两个点$i,j$的垂直平分线把平面分为两部分,一部分归$i$控制,一部分归$j$控制,而垂直平分线上的点同时被$i, 阅读全文
posted @ 2019-07-01 21:31 gz-gary 阅读(211) 评论(0) 推荐(0)