随笔分类 -  Codeforces

摘要:" 439 Div2 E" 题意 给出二维平面,有多个询问: 1. 把某一区域围起来(围墙之间无交点) 2. 移除某一区域的围墙(此时保证围墙一定存在) 3. 选定两个位置问是否可以互相到达 分析 看起来很复杂,其实这道题限制颇多,实际并不用去寻找使得两个位置可以互相到达的路线,考虑二维树状数组维护 阅读全文
posted @ 2017-10-26 00:39 ftae 阅读(143) 评论(0) 推荐(0)
摘要:"853C Boredom" 题意 给出一个矩阵,每行每列有且仅有一个点。每次询问一个子矩形,问这些点构成的矩形有多少个与给定的矩形相交(两个处于对角线上的点可以组成矩形)。 分析 考虑矩形周围 8 个方向,答案其实就是这些方向上的点的组合。直接去算相交比较麻烦,我们可以考虑去算不相交的矩形的个数, 阅读全文
posted @ 2017-10-14 21:10 ftae 阅读(339) 评论(0) 推荐(0)
摘要:"863F Almost Permutation" 题意 给出每个位置可以放的数字的范围,定义 $cost = \sum_{i=1}^{n}(cnt(i))^2$ ,其中 $cnt(i)$ 为数字 $i$ $(1 \leq i \leq n)$ 出现的次数。将每个位置都填上一个数字,求 $cost$ 阅读全文
posted @ 2017-09-30 12:28 ftae 阅读(370) 评论(0) 推荐(0)
摘要:"850C Arpa and a game with Mojtaba" 题意 两个人玩游戏。初始给出一些数字,每次操作要求选择两个数 $(p,k)$ 使得 $p^k$ 是某个数的因子,其中 $p$ 是素数,$k$ 是正整数。然后将所有包含这个因子的数除去这个因子,谁不能操作谁输。 分析 博弈问题。 阅读全文
posted @ 2017-09-29 14:00 ftae 阅读(195) 评论(0) 推荐(0)
摘要:"856C Eleventh Birthday" 题意 给出一些数,问将这些组合起来形成的新数能被11整除的方案数。 分析 这里要用到关于$11$的一个 "性质" 。 判断一个数能否被$11$整除只需要奇数位的和减去偶数位上的和被$11$整除即可。 证明:对于$1, 100, 10000 ...$, 阅读全文
posted @ 2017-09-28 14:07 ftae 阅读(260) 评论(1) 推荐(1)
摘要:" 436 Div2 E" 题意 某人的房子着火了,现在有 $n$ 件物品待抢救,每件物品有抢救需要的时间和自身的价值,以及过多长时间物品会损坏。问最多一共可以抢救价值多少的物品? 分析 看数据就知道是 $DP$ 了。 考虑怎么去 $DP$ ,因为给出物品是无序的,需要我们自己去决定顺序,显然不能直 阅读全文
posted @ 2017-09-26 22:01 ftae 阅读(154) 评论(0) 推荐(0)
摘要:"855C Helga Hufflepuff's Cup" 题意 要求构建一棵树,树上至多可以存在 $x$ 个权值为 $k$ 的重要点,且与重要点连边的点的权值必须小于 $k$,问有多少种构树方案。 分析 树形DP。 有 $dp[u][s][cnt]$,表示以 $u$ 为根结点的子树,重要点的数目为 阅读全文
posted @ 2017-09-26 21:59 ftae 阅读(308) 评论(0) 推荐(0)
摘要:"855E Salazar Slytherin's Locket" 题意 给出一个区间,问这个区间内有多少个数满足,将这个数转化为某个进制后,所有数的数量都为偶数。 分析 谁能想到 数位DP 的裸题竟然放到了 E , 美滋滋。 考虑用一个二进制数记录每种数出现的次数的奇偶性,很容易用异或去操作。 c 阅读全文
posted @ 2017-09-25 07:32 ftae 阅读(433) 评论(0) 推荐(0)
摘要:"856B Similar Words" 题意 如果一个字符串可以通过去掉首位字母得到另一个字符串,则称两个字符串相似。 给出一个字符串集合,求一个新的字符串集合,满足新集合里的字符串是原字符串集合中的字符串的前缀且字符串两两不相似,问新集合里字符串的最大数量。 分析 注意到字符串都是基于原串的前缀 阅读全文
posted @ 2017-09-22 13:56 ftae 阅读(212) 评论(0) 推荐(0)
摘要:" 432 Div2 D" 题意 给出一些数字,如果这些数字的的 $gcd$ 不为1则称这些数字 $good$。 可以有两种操作: 1. 花费 x 删掉一个数 2. 花费 y 将一个数加 1 问使这些数 $good$ 的最小花费。 分析 一直找不到这题的重点。其实仔细想想与 $gcd$ 有关,或者说 阅读全文
posted @ 2017-09-15 00:18 ftae 阅读(91) 评论(0) 推荐(0)
摘要:" 430 Div2 D" 题意 给出一些数,每次操作先将所有数异或一个值,再求这些数中没有出现过的最小的非负整数。 分析 对于更新操作,对于 $x$ 所有为 $1$ 的位给相应层添加一个标记,当查询时走到这一层,如果有这个标记,就要把左子树当作右子树,右子树当做左子树。 对于查询操作,显然优先走左 阅读全文
posted @ 2017-08-30 19:04 ftae 阅读(92) 评论(0) 推荐(0)
摘要:" 430 Div2 C" 题意 给出一棵带点权的树,每一个节点的答案为从当前节点到根节点路径上所有节点权值的最大公因子(在求最大共因子的时候可以选择把这条路径上的任意一点的权值置为0)。对于每一个节点单独考虑,输出最大的答案。 分析 本以为是一道树形DP,写完就 WA 了。 补题的时候呢时间复杂度 阅读全文
posted @ 2017-08-30 19:03 ftae 阅读(191) 评论(0) 推荐(0)
摘要:"837F Prefix Sums" 题意 定义函数 $p(x)$ 会返回 $x$ 这个数组的前缀和,定义 $A^i=p(A^{i 1}) \ (i 0)$,给出 $A^0$ 求使得 $A^i$ 中存在大于等于 $k$ 的数的最小的 $i$ 。 分析 打表~~容易发现~~当数的数量大于 $4$ 时, 阅读全文
posted @ 2017-08-14 21:55 ftae 阅读(163) 评论(0) 推荐(0)
摘要:" 428 Div2 D" 题意 给出一些数,现在要求找出一些数满足 $i_1 1$ ,记这些数的贡献为 $k gcd(a_{i_1}, a_{i_2}, ..., a_{i_k}) $ 。 求每种方案的贡献之和。 分析 不得不说和 "hdu6053" 很类似,其实还要简单不少。 考虑枚举 $gcd 阅读全文
posted @ 2017-08-14 21:54 ftae 阅读(118) 评论(0) 推荐(0)
摘要:" 427 Div2 D" 题意 给出一个字符串,求它的子串中为 $k palindrome$ 的个数。 $1 palindrome$ 要求是一个回文串。 $k palindrome (k 1)$满足以下条件: 是一个回文串 它的左右两边是一个不为空的 $(k 1) palindromes$ 。 分 阅读全文
posted @ 2017-08-11 22:21 ftae 阅读(142) 评论(0) 推荐(0)
摘要:"837E Vasya's Function" 题意 1. $f(a, 0) = 0$ 2. $f(a, b)=1+f(a, b gcd(a,b))$ 给出 $a, b$ ,求 $f(a, b)$。 分析 首先找出所有 $a$ 的因子,然后找出是每个因子倍数的数且小于等于 $b$ 的最大值,记录每个 阅读全文
posted @ 2017-08-09 22:41 ftae 阅读(397) 评论(0) 推荐(0)
摘要:" 426 Div2 D" 题意 给出 $n$ 个数字,将这些数字隔成 $k$ 个部分(相对位置不变),统计每个部分有几个不同数字,然后全部加起来求和,问和最大是多少。 分析 很容易想到 $DP$ 方程,$dp[i][j] = max(dp[i][j], dp[k][j 1] + size(k + 阅读全文
posted @ 2017-08-05 22:27 ftae 阅读(417) 评论(0) 推荐(0)
摘要:" 425 Div2 D" 题意 给出一个树形图,每次询问给出三个点,从其中选择两个作为起始点,一个终点,求从两个起始点出发(走最短路)到达终点经过的共同的点最多的数量。 分析 这种树上点与点之间距离有关的问题大多与 LCA 有关,那么我暴力枚举每个点分别作为起始点、终点,求下最大距离就好了。 co 阅读全文
posted @ 2017-07-25 22:16 ftae 阅读(195) 评论(0) 推荐(0)
摘要:"825F String Compression" 题意 给出一个字符串,你要把它尽量压缩成一个短的字符串,比如一个字符串 你可以转化成 ,长度为 3,比如 转化成 ,长度为 7, 转化为 ,长度为 3。 分析 求转换后的最短字符串,那么怎么去组合字符串中的子串是关键。 考虑 dp, dp[1... 阅读全文
posted @ 2017-07-21 21:25 ftae 阅读(741) 评论(2) 推荐(0)
摘要:"825E Minimal Labels" 题意 给出 m 条有向边,组成有向无环图,输出一个 1 到 n 组成的排列,每个数只能出现一次,表示每个点的标号。如果有边 $(u, v)$ 那么 $label_u using namespace std; const int MAXN = 1e6 + 1 阅读全文
posted @ 2017-07-21 21:24 ftae 阅读(586) 评论(0) 推荐(0)