比赛题解
摇摇乐
摇摇乐
展开
-
2020 杭电多校5 1003、1005
1003 Borrow题意:给三个数字 x,y,zx,y,zx,y,z,每次取最大的数字将其减一,并且等概率给剩下两个数字之一加上一,问3个数字相等的期望次数,若不可能输出 −1-1−1(∑x+y+z≤3×106)(∑x+y+z≤3×10^6)(∑x+y+z≤3×106)思路:首先不整除就输出 −1-1−1 ,考虑(x+y+z)/3=ave(x+y+z)/3=ave(x+y+z)/3=ave,且 x<=y<=zx<=y<=zx<=y<=z若x<ave&l原创 2020-09-28 20:12:51 · 231 阅读 · 0 评论 -
2020 杭电多校5 1007、1008、1011
1007 tree (hdu 6820)题意:输入 n,kn,kn,k ,给定一棵带权树,包含 nnn 个节点,要求找到一个权重和最大的子树,使得这个子树度数大于 kkk 的节点不超过 111 个。(n<=2e5)(n<=2e5)(n<=2e5)思路:思考枚举度数大于k的点,进行搜索?显然复杂度太高。贪心求解也不能枚举到每一颗子树。参考题解的方法,使用 dp[i][0]dp[i][0]dp[i][0] 表示包含 iii 的子树不包含度数大于 kkk 的节点的最大权和,使用 dp原创 2020-09-23 12:54:54 · 228 阅读 · 0 评论 -
2020 杭电多校9 1007 Game (平衡树)
题意:给一个方块的序列 bibibi ,如下图。有 qqq 次询问,每次有两种操作,一种操作为 (x,y)(x,y)(x,y) ,表示从第 xxx 列的 yyy 的方格的位置向左移一格,同时将上面的都会带动,并且若左边有方块则也依次向左移,若 yyy 是空的,或者移出边界,则不移动。第二种操作,则是查询第 xxx 列的方块个数。思路:对于 111 操作,若设 lll 为最大的位置使得 min{b[l]到b[x]}>=ymin\{b[l] 到 b[x]\}>=ymin{b[l]到b[x]}原创 2020-08-21 14:52:20 · 306 阅读 · 0 评论 -
2020 杭电多校8 1011 Kidnapper‘s Matching Problem (线性基、kmp)
题意:给一个 SSS 集合,再给两个数组 a,ba,ba,b ,分别长为 n,m,(n>=m)n,m,(n>=m)n,m,(n>=m),将 nnn 中取 n−m+1n-m+1n−m+1 个长度为 mmm 的子串,与 mmm 进行匹配,若对于每一个对应的 aka_kak 和 bkb_kbk ,都满足 ak⊕bk∈2⊕Sa_k⊕b_k∈2^S_⊕ak⊕bk∈2⊕S 则匹配成功。其中2⊕S2^S_⊕2⊕S是有所有S子集异或和得到的集合。ans=∑i=1n−m+1[(ai,ai+1原创 2020-08-14 14:58:41 · 172 阅读 · 0 评论 -
2020 杭电多校8 1009 Isomorphic Strings (哈希/kmp)
题意:给一个字符串 sss ,长度为 nnn ,问是否存在一个 kkk ,满足 k∣nk|nk∣n ,并且将 sss 分成相等的 kkk 段子串,每一段子串为循环同构,两个串 s1,s2s1,s2s1,s2 循环同构就是满足存在一个 iii ,使得 s2=s1i+1s2i+2s3i+3...s11s12...s1is2=s1_{i+1}s2_{i+2}s3_{i+3}...s1_1s1_2...s1_is2=s1i+1s2i+2s3i+3...s11s12...s1i思路:考虑枚举所有 n原创 2020-08-13 19:42:59 · 1000 阅读 · 0 评论 -
2020 杭电多校4 1007 Go Running (最大流)
题意:有一些学生在 xxx 轴上跑步,速度为 111 ,可以有两种方向,并且具有起始时间、结束时间和起始位置。现在有 nnn 个监视器,每个监视器记录了 (t,x)(t,x)(t,x),表示在t时刻, xxx 位置有人。问最少有多少个学生有去跑步。思路:如果建立 yyy 轴为时间,那么每个学生就是 y=x+b、y=x+b、y=x+b、 y=−x+by=-x+by=−x+b 直线上的一段,而监视器就是坐标系上的点,现在就是问怎么选择最少的线段,使得点全被覆盖。而对于一个点,就会对应两条线可以覆盖它,而一原创 2020-07-30 20:07:59 · 368 阅读 · 0 评论 -
atcoder arc066C (思维+dp)
题目链接题意:有 nnn 个数,每两个数之间有加号或者减号,要求在其中加入括号,使得最后的结果最大思路:主要是分析有两个性质,首先是在加号前面加括号没有意义,因为加号的括号脱去不改变符号,然后是最多加两重括号。三重括号可以转化为两重括号或者一重括号。有了这些性质,那么我们就可以令 dp[i][j]dp[i][j]dp[i][j] 表示到第 iii 个数左括号 −-− 右括号为 jjj 的最...原创 2019-11-18 19:08:01 · 328 阅读 · 0 评论 -
Comet OJ - Contest #12 C Bus Station(最短路)
题目链接Bus Station题意:有 mmm个车站,有 n1+n2n1+n2n1+n2 辆车单线车,其中 n1n1n1 辆车从第一个车站开往第 mmm 个车站, n2n2n2 辆车从第 mmm 个车站开往第一个车站。给一个二维矩阵表示每辆车到达每个站的时间。现在有两个人要在 sss 车站见面,一个人先到时间为 t1t1t1 ,一个人后到时间为 t2t2t2 ,先到的人不想在车站等待太长的时...原创 2019-10-14 18:36:08 · 129 阅读 · 0 评论 -
Codeforces Round #499 (Div. 2) D E
题目链接D. Rocket题意:一道交互题,要求在询问不超过 606060 次求出一个 xxx 的值,其中(1<=x<=m)(1<=x<=m)(1<=x<=m) 每次询问如果大于 xxx 就返回 −1-1−1 ,小于 xxx 就返回 111 ,等于就结束程序,但是回答不一定是真的,有一个 010101 序列 ppp ,根据序列,第一次询问就看 p[1]p[...原创 2019-10-12 21:54:37 · 108 阅读 · 0 评论 -
2019-CCPC-秦皇岛 F Forest Program(点双连通)
题目链接Forest Program题意:给一个图,要求删去一些边,使得剩下的点成为一个森林。原创 2019-10-09 09:28:13 · 197 阅读 · 0 评论 -
2019-CCPC-秦皇岛 E Escape (网络流)
题目链接Escape题意:给定一个网格,用 010101 表示, 111 的格子表示障碍,有 aaa 个机器人在第 000 行向下,在第 n+1n+1n+1 行有 bbb 个出口,机器人只能直走,现在可以在空格上放置转弯转置,具体如题目中所示。问是否能够使得所有机器人走出迷宫。思路:由于机器人所在列一定不同,那么可以发现,对于每一个格子要么是转弯,要么竖直,要么水平,并且只会经过一次。...原创 2019-10-08 17:22:08 · 434 阅读 · 0 评论 -
AtCoder-ARC081(DEF题解)
AtCoder ARC081 部分题解(DEF)题目链接文章目录AtCoder ARC081 部分题解(DEF)题目链接@[toc]D Coloring Dominoes (递推)题意:思路:代码:E Don't Be a Subsequence (贪心 + 思维)题意:思路:代码:F Filp and Rectangles (思维 + 单调栈)题意:思路:代码:D Coloring Dom...原创 2019-08-29 11:00:47 · 268 阅读 · 0 评论 -
CF Round 72 (Rated for Div. 2) (CDE)
题目链接The Number Of Good Substrings(暴力)题意:给定一个二进制串,问有多少个子串形成的十进制值等于子串长度。(len<=1e5)(len<=1e5)(len<=1e5)思路:直接暴力求解即可,我们枚举每一个1的位置,向后延伸20的长度,因为区间不会超过 2202^{20}220 对于前导零我们可以通过预处理每一个111...原创 2019-09-06 13:21:02 · 128 阅读 · 0 评论 -
牛客练习赛 51 (DEF题解)
题目链接D 羊吃草(二分图最大匹配)题意:有nnn个羊,mmm个草,每只羊可以吃[li,ri][l_i,r_i][li,ri]的草,有QQQ次询问,每次询问[li,ri][l_i,r_i][li,ri]区间的草最多可以给多少只羊吃,每次询问独立。(n,m<=400)(n,m<=400)(n,m<=400)思路:我们可以从草往羊进行连边,那么每次询...原创 2019-09-08 10:42:19 · 303 阅读 · 2 评论 -
2019百度之星初赛4 部分题解
题目链接题意:给一个无向图,可能有重边,问是否可以找到边不相同的kkk个生成树。思路:比赛的时候直接判断了所有点的度,实际上是因为数据太水过了。后来才知道这题是全局最小割的板题。全局最小割可以求出使得无向图不连通的最小代价,那么我们将每一条边的权值设为1,那么如果当前的全局最小割为mincutmincutmincut,如果它等于kkk,就说明要断开kkk条边才能使得图不连通,也就是说这张...原创 2019-09-11 21:27:52 · 349 阅读 · 5 评论 -
牛客练习赛51- F 发传单(网络流)
题目链接F 发传单题意:一个人有 nnn 个朋友,这个人有很多传单,他可以将传单发给所有朋友,对于发给第 iii 个人需要 wiw_iwi 的费用,他的朋友之间也有相互认识可以将传单给其他人,也需要一些费用,告诉你具体的朋友之间的认识关系和费用,要求这个人在使用最少的传单数下用最少的总费用,使得朋友都看过传单。思路:由于要求每一个朋友都看过,那么可以将每一个朋友进行拆点 (i,i+n)...原创 2019-09-17 20:06:12 · 215 阅读 · 0 评论 -
Educational Codeforces Round 73(DEF)
题目链接D Make The Fence Great Again(DP)题意:有 nnn 个数字,每次操作可以将一个数字加 111 ,并且需要代价 valival_ivali ,问要使得相邻的数字不同最少需要的代价。思路:因为只是要求相邻的数字不同,那么每一段相同的数字只要间隔给数字加 111 ,在段与段之间最多再加上 111 ,所以每一个数字最多加两次,那么令 dp[i][0/1/2...原创 2019-09-21 12:54:42 · 151 阅读 · 0 评论 -
牛客挑战赛32 E 树上逆序对 题解
题目链接E 树上逆序对 (树链剖分+主席树)题意:给定一颗树,每一个点有一个权值为 viv_ivi或者 −vi-v_i−vi,多次询问能否存在 kkk 个树上逆序对。树上逆序对的定义为:若有一对节点 (x,y)(x,y)(x,y) ,满足 xxx 是 yyy 的祖先,且 xxx 点权值大于 yyy 点的权值,则 (x,y)(x,y)(x,y) 为一个树上逆序对。思路:由于是多次询问,...原创 2019-09-21 15:52:02 · 232 阅读 · 0 评论 -
Educational Codeforces Round 60 E (数学思维)
题目链接E. Decypher the String题意:一道交互题,系统生成了一个字符串 SSS ( 262626 个小写字母组成 len<=1e4len<=1e4len<=1e4),并且执行了若干次操作,每次操作交换两个位置的字符,现在给你交换完的串,让你询问不超过 333 次得到原来的串,每次询问可以输入一个同样长度由小写字母组成的串,系统返回将该串经过同样操作后的字...原创 2019-09-29 15:35:24 · 127 阅读 · 0 评论 -
校内训练赛9 Repeated Substrings(后缀数组)
文章目录Repeated Substrings (二分+后缀数组)题目链接题意:思路:代码:Repeated Substrings (二分+后缀数组)题目链接题意:给定一个字符串 S(∣S∣<=1e5)S (|S|<=1e5)S(∣S∣<=1e5) ,要求找到一个最长的子串,并且这个子串出现不止一次,可以重叠。有多个最长子串则输出字典序最小。思路:对...原创 2019-08-27 20:51:34 · 239 阅读 · 0 评论