摘要:题解: 这里的m一定是等于n的,n为数最大为n个9,这n个9一定满足条件,根据题目意思,前k个一定是和原序列前k个相等,因此如果说我们构造出来的大于等于原序列,直接输出就可以了,否则,由于后m-k个一定是重复前k个,我们只能在前k个改动,所以只需要让前k个加1就行了,然后在根据题意构造一遍。 #in
阅读全文
12 2019 档案
摘要:题解: 这里的m一定是等于n的,n为数最大为n个9,这n个9一定满足条件,根据题目意思,前k个一定是和原序列前k个相等,因此如果说我们构造出来的大于等于原序列,直接输出就可以了,否则,由于后m-k个一定是重复前k个,我们只能在前k个改动,所以只需要让前k个加1就行了,然后在根据题意构造一遍。 #in
阅读全文
摘要:题目大意: 有两种类型的果酱,一个梯子,从中间开始吃,可以吃左边的,也可以吃右边的,最终要使两种类型的果酱的数量想等 题解: 思路对了,但是没考虑完。 对梯子的左侧的果酱I我们用两个数组记录其从1到i的1的数量和从1到i的2的数目,对梯子右侧的果酱保存从i到n的1的数目和2的数目。 然后两种情况,
阅读全文
摘要:用前缀和写一直wa。。 思路:让金牌和银牌最少,通多增加铜牌的方式来扩大总奖牌的个数。 #include<bits/stdc++.h> using namespace std; map<int ,int >mp; const int N=1e6+7; int arr[N]; void solve()
阅读全文
摘要:题目大意: 一共有m个士兵,k个陷阱,时间为t,一个首领,这个首领需要在t时间内尽可能多的将士兵带到boos的面前, 第二行是每个士兵的灵敏度。 紧接着是k个陷阱,每个陷阱有l,,r,,d组成,l代表陷阱的位置,r代表l处的陷阱可以在位置r处被解决,陷阱的灵敏度是d,当陷阱的灵敏度比士兵的灵敏度大时
阅读全文
摘要:题目大意; 输入n和m,n是n个字符,m是m个前缀。对前缀的规定可以配对的括号。比如(),,((()))等等。在输入n个括号字符,对这个n个字符,通过交换使其满足m个前缀。交换次数不限,规则想当与reverse函数 题解: 先构造m-1个前缀,使其均为"()"。然后剩下的字符构造最好一个前缀。。。。
阅读全文
摘要:考虑区间长度,我们让r和b除以他们的__gcd这样,这样得到的r和b是互质或者相等的。我们取他们两个小的那个。假设是b.那么被涂的方块应该是b,2b,3b,4b,....kb. 相邻的两个方块之间的区间长度是b-1。。。。k个连续的方块一共会产生k-1的间隔,这些间隔的总长度是n*(k-1),如果说
阅读全文
摘要:秒的有点难以理解:https://blog.csdn.net/weixin_42868863/article/details/103200132 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll I
阅读全文
摘要:题解: 保存每个1的位置。然后记录1的总个数cnt,如果存在一个k使得这个k是每个集合的倍数,那么为了使操作次数最小,这个k应该是cnt的质因子。(因为都是每个集合的数目1,使每个集合的数目变为2需要的次数一定小于使每个集合数目变为4需要的次数) 枚举cnt的质因子x,即x个1构成一个新的集合。构成
阅读全文
摘要:题目大意:将k个鸡放到一个n*m的矩阵中,要求每个鸡所占的rice的个数只差最小 题解:构造,设一共有cnt个rice,可以分cnt/k个,即每一只鸡要么占用cnt/k个rice,要么占cnt/k+1个rice。蛇形跑一边矩阵即可。 注意:要判断当前鸡的个数,即如果当前鸡的个数达到k个,那么放置完毕
阅读全文
摘要:乱搞一发,,竟然过了!!! 题目大意:输入一个整数n,然后n-2行,每一行3个数字,表示一个数组中连续的3个数字,然后将这3个数字的顺序打乱,然后再将这个n-2行打乱,要求还原数组。 题解:先找到前3个数字,第一个数字跟最后一个数字出现的次数肯定为1,所以直接找出现次数为1的点就可以了。然后第二个点
阅读全文
|