2020牛客多校赛
。
+0呐~
这个作者很懒,什么都没留下…
展开
-
牛客多校第十场 I-Tournament(思维、构造)
目录题意解题思路代码题意链接:Tournament给出一个数n,请你安排n个队相互之间互打共n(n-1)/2场比赛,一天一场,每个队在需参加的最早的那场进场需参加的最晚的那场退场,问怎么安排才能使他们待的总时间最少解题思路由于每个队在需参加的最早的那场进场需参加的最晚的那场退场,而又要使他们待的总时间最少,所以要使大家的等待时间均匀分配,所以就要分成三个部分前半部分互打前半部分与后半部分对打需要注意使后半部分进场均匀,前半部分退场均匀后半部分互打有点难理解,以n=10为例,原创 2020-08-12 10:17:35 · 334 阅读 · 0 评论 -
牛客多校第十场 A-Permutation(dfs)+ E-Game(思维+前缀和)
目录题意解题思路代码题意解题思路代码题意链接:Permutation给出一个素数n,求一个由1- n-1组成的数列满足后一个数是前一个数的2倍或3倍%n解题思路分析可知数列的第一个数是1,之后的2~p-1个数,有两种情况,前一个数乘2或者3,所以要分别来找,dfs,如果两种情况都不满足,就回溯;如果计数达到了p-1,就证明已经达到的一个序列,退出。代码#include<stdio.h>#include<string.h>using namespace std;原创 2020-08-11 21:09:37 · 172 阅读 · 0 评论 -
牛客多校第九场 I-The Crime-solving Plan of Groundhog(思维+高精)
目录题意解题思路代码题意链接:The Crime-solving Plan of Groundhog给出n个0-9的数,求由这n个数组成的两个的成绩最小解题思路把当前的数字拆成4个数 ????, ????, ????, ????(???? ≤ ???? ≤ ???? ≤ ????) ,那么我们有两种决策:两位数×两位数,或者三位数×一位数。10???? + ???? ⋅ 10???? + ???? = 100???????? + 10???????? + 10???????? + ???原创 2020-08-09 10:19:12 · 242 阅读 · 0 评论 -
牛客多校第九场 F-Groundhog Looking Dowdy(尺取+贪心)
目录题意解题思路代码题意链接:Groundhog Looking Dowdy一共有n天,每天有ki件衣服,每件衣服有一个dowdiness,问从n天中选m天每天穿一件衣服使得最大的dowdiness与最小的dowdiness的差值最小。解题思路由于要最小化最大值和最小值的差值,因此我们可以把所有衣服按照dowdiness从小到大排个序。排序之后,设最终选出的m件衣服最小覆盖区间为[L,R],则答案为downdiness[R]-downdiness[L]则一个合法的区间至少需要包含m种不同原创 2020-08-09 09:45:03 · 164 阅读 · 0 评论 -
牛客多校第八场 I-Interesting Computer Game(离散化+并查集)
目录题意解题思路代码题意链接:Interesting Computer Game有n个回合,每个回合给出两个数ai和bi,每个回合可选择ai和bi其中一个之前未被选过的数,问n个回合总共最多能选多少个不同的数解题思路1<=n<=1e5 但 1<=ai,bi<=1e9 ,所以需要把ai、bi共2n个数离散化到2e5用并查集把ai和bi并到一起,统计每个集合的元素个数用ans[]存放每合并一次ai和bi说明该集合中可选个数可+1,用cs[]存放每个集合取min(an原创 2020-08-03 21:01:41 · 258 阅读 · 0 评论 -
牛客多校第六场 K-K-Bag(离散化、枚举)
目录题意解题思路代码题意链接:K-Bag定义一种k-bag序列为由多个k的全排列组成的数列,而part-k-bag序列是k-bag序列的连续子序列现给出n、k,以及一个长为n的序列判断该序列是否为part-k-bag序列范围: 1<=k<=109 1<=n<=5*105解题思路若序列 a[i]<1 || a[i]>k 则肯定不符合因为k可达109需将其离散化下表降至5*105unique是去重函数,对已经排序的数组去重,并返回去重后的长度原创 2020-07-29 16:14:56 · 271 阅读 · 0 评论 -
牛客多校第六场 C-Combination of Physics and Maths(前缀和、贪心)
目录题意解题思路代码题意链接:Combination of Physics and Maths一个矩阵的底面积定义为最后一行的数的和,重量定义为所有数的和,给一个正整数矩阵,找一个“压强”最大的可非连续子矩阵解题思路选底为第i行的子矩阵,则最优情况为顶为第一行令已选的某列的重量为a1 ,底面积为b1,对于重量为a2,底面积为b2的列若a1b1>a2b2则a1b1>a1+a2b1+b2(移项作差可证)若\quad\frac{a_1}{b_1} > \frac{a_2}{原创 2020-07-28 00:14:48 · 197 阅读 · 0 评论 -
牛客多校第一场 A-B-Suffix Array(后缀数组)
目录题意解题思路代码题意链接:B-Suffix Array给你一个长度为n的只由‘a’和‘b’组成字符串(1<=n<=105),并重新定义了这个字符串的所有后缀串的值,求重新定义完以后的该字符串的所有后缀的sa,定义如下:当前位置的值为与前一次出现相同字符的位置的距离。解题思路举个例子:abaabaaaba,则这个字符串的后缀与所对应的值分别为:后缀所对应的值ABabaabaaaba00213211420021321142baabaaaba0原创 2020-07-16 11:31:58 · 332 阅读 · 0 评论 -
牛客多校第一场 J-Easy Integration(定积分、逆元)
目录题意解题思路代码题意∫01(x−x2)ndx\int_{0}^1 (x - x^2)^n \mathrm{d} x∫01(x−x2)ndx mod 998244353范围:1≤n≤106链接:Easy Integration输入123输出166374059432572553591816295解题思路用分部积分法求定积分∫01(x−x2)ndx\int_{0}^1 (x - x^2)^n \mathrm{d} x∫01(x−x2)ndx=(n!)2/(原创 2020-07-13 16:44:07 · 474 阅读 · 1 评论 -
牛客多校第一场 F-Infinite String Comparision( 无限字符串比较、找循环节)
目录题意解题思路易错点代码题意给你两个字符串a、b,比较两个的无限循环字符串的字典序大小范围 : 1≤∣a∣,∣b∣≤10^5链接 : link输入aabzzzzzabaabaa输出:<=>解题思路找两字符串的最小循环节lcm(la,lb)会超时la+lb-lcm(la,lb)<2*max(la,lb)Periodicity Lemma(周期性引理):假设一个字符串S有循环节P、Q并且满足P+Q≤|S|+gcd(p,q),那么gc原创 2020-07-13 10:49:41 · 441 阅读 · 0 评论 -
牛客多校第六场 E-Easy Construction(思维、构造)
目录题意解题思路代码题意链接:Easy Construction给出n,k,构造出一个n的全排列P,使得对于 1~n 中任意的数 i,P 都存在一个长为 i 的子区间,其和模 n 余 k。有解输出任意一组,无解输出 -1。解题思路首先如果要有解,k 必须是 n(n+1)/2 % n,因为长度为 n 的子区间只有一个,也就是 P 本身,而 P 本身的元素和就是 n(n+1)/2。然后假设 k 满足上述条件,此时是一定有解的。且k的值是固定的。k=n (n+1) / 2 % n= ( n/2原创 2020-07-27 22:43:02 · 600 阅读 · 0 评论