自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(371)
  • 收藏
  • 关注

原创 Codeforces Round 879 (Div. 2) A-E

解题思路:答案肯定是某一个区间的一段长度*2,那么枚举每一个区间他的最大值是多少。那么就是要去看这个区间和最左边的区间的交集和最右边区间的交集以及区间被包含的情况。以下提供一个比较复杂的解决思路,先考虑区间包含最大的情况,那么一个区间被另一个区间包含,肯定是找最大的能够包含他的那个区间。解题思路:对第一个数补充前导0,然后找到他们第一个不相同的数的位置,就可以把两个数设置成abcd..x00000,abcd..y99999,x > y,abcd..x00000>abcd..y99999。

2023-07-07 15:33:52 241

原创 Codeforces Round 877 (Div. 2) A-E

我们记录((出现的位置和))出现的位置,那么当原始)数量大于(时,肯定是在第一个((处做增量,并且保证出现第一个((之前的前缀和都不小于0,然后再往后走。假设((出现的位置是(i-1,i),那么在(i+1,n)中肯定没有)),所以要使得(i+1,n)满足条件必须是(和)交替出现的情况。解题思路:其实问题是存在素数的问题,如果n和m都是合数,那么直接按照顺序1,2,3,4,,,n这样左右两边差都是1,上下两边差就是m了。

2023-07-05 15:06:01 234

原创 Codeforces Round 872 (Div. 2) A-D2

当你任意移动x一个位置,肯定大于x这个点的所有距离,因为k不是偶数无法使得移动之后一半点增加1一半点减小一。如果k是偶数的情况下,那么就存在链的情况使得一种k点分布的情况下有多个点满足条件。并且把k分成2分,如果一个边(u,v)满足条件,那么以v为子树的点有k/2个,剩下的k/2就不在v这棵子树上。因此我们可以枚举边的贡献,来防止重复计算,因为一个n个点链他的边就是n-1条。解题思路:n-1 * m的格子肯定是最大值减去最小值的,然后剩下一行就看是最大值减去次小值还是次大值减去最小值更好了。

2023-06-11 17:46:24 174

原创 Codeforces Round 867 (Div. 3) A-G2

解题思路:如果有一个字符数量超过一半那么肯定无解,否则就算现在已有的对数,如果有个字母的对数超过已有对数的一般,那么答案就是这个字母的对数了,否则把所有的对数除以2就行了。解题思路:可以构造出取模后这样的数组,0 ,n-1,1,n-2,2,n-3....,可以知道当n是奇数的时候答案是无解的,因为总和是整除n的。解题思路:算一下数的直径,然后枚举到每个点的值取最大就行了。解题思路:暴力每个数作为最大数,然后再暴力他们的因子就行了。解题思路:因素分解一下,然后再剪点枝。解题思路:(n+1)^2 + 1。

2023-05-22 19:44:59 496

原创 Codeforces Round 865 (Div. 2) A-C

对于b[1]来说可以无限小,那么就假定给b[1]无限小的数,也就是b[1] -= inf,b[3] += inf,然后我们对b数组进行差分超过,使得每个大于1的位置b[i]为0,最后在看b[n]不小于0就行了。解题思路:用贪心的方法,第一个数是正数肯定放最大的数2n,最后一个数看n的奇偶性是正数还是负数,正数就放2*n-1,负数就放1,那么接下来的数就是交替了,因为要使得最小值最大,那么肯定是要保证数平均,所以他们的波动不超过1。

2023-04-17 15:50:35 73

原创 Codeforces Round 861 (Div. 2) A-E2

解题思路:我们可以把每次枚举一张牌看做是多项式卷积,枚举x,令2 * i = x (mod k)的数的项数为零,其他位置为1,那么就可以像E1那样求得n个数最终模数是x但是里面不包含2 * i = x (mod k)的情况了,最终用总数减去就行了。解题思路:算一下不需要修改的对数,然后用总共的对数减去不需要修改的对数就是答案了,不需要修改也就是两个位置数相同,因为k是奇数,所以我们分开讨论偶数的位置和奇数的位置相同数的贡献就行了。解题思路:按列进行排序,然后算一下每个数的正负值贡献。

2023-04-10 14:58:35 602

原创 Codeforces Round 862 (Div. 2) A-E

解题思路:首先需要证明,最大长度大于等于K的点一定会是联通的,最大长度小于K的点一定是个孤立的点。这个看似不好证明,实际用图的直径就可以证明,假设我们已经知道了图的直径的两个端点u,v,那么任意一点x他的最长长度一定是到达u或者v的路径,因为如果不是,那么u,v就不是图直径的两个端点,可以自己画图证明一下。解题思路:合并两式就得到 a*x^2 + (b-k)*x + c = 0,那么根据求根公式,直线和抛物线没有交点的情况就是没有跟的情况,也就是(b-k)^2 < 4ac。解题思路:异或没啥好说的。

2023-04-06 14:34:18 472

原创 Codeforces Round 860 (Div. 2) A-E

0的情况也很好判断,令vis[i]为i~n的连续次数,那么a[i] == vis[i+1]答案就为0。1的情况就有几种了,一种是该i的值,当vis[i+1]连续,一种是该a[i+1]的值,令a[i] <= ma[i+1],这里令ma[i]令i~n连续的最大值。还有一种情况是改变i + a[i] + 1的值,因为vis[i+1]不连续,那么如果i+1+a[i+1]<=n,那么vis[i+1+a[i+1]+1]肯定也是不连续的,因此还可以不改变i+1的值,该i + a[i] +1的值。

2023-04-03 20:09:04 222

原创 Codeforces Round 853 (Div. 2) A-D

我们假设想改变i位置的值,但是同时不改变大于i位置或者不改变小于i位置的值,那么就得找一个位置j,j位置值为1,但是大于j位置的值都是0或者小于j位置的值都是0。根据这个道理,我们可以找到一个位置j,先把他的右边值都变成相等,然后再变换j的位置为最右边的那个j(因为满足条件的j有两种情况,先找其中一个再用另一个),用另一个j进行左边值的变换,这样就不会改变右边已经变换过的值,所以最终每个值都看一遍,不会超过n次。解题思路:单算每个值的贡献,一个值要么在合并数组中出现2次,1次,或者0次。

2023-03-30 15:36:29 156

原创 Codeforces Round #851 (Div. 2) A-E

Codeforces Round #851 (Div. 2)

2023-02-21 22:46:53 355

原创 Codeforces Round #846 (Div. 2) ABEF

Codeforces Round #846 (Div. 2)

2023-02-16 15:17:07 108

原创 Codeforces Round #843 (Div. 2) A-E

Codeforces Round #843 (Div. 2)

2023-02-02 17:23:28 173

原创 Codeforces Round #842 (Div. 2) A-E

Codeforces Round #842 (Div. 2)

2023-01-11 10:38:55 221

原创 Codeforces Round #818 (Div. 2) A-E

Codeforces Round #818 (Div. 2)

2022-11-04 16:54:51 90

原创 Codeforces Round #821 (Div. 2) A-D2

Codeforces Round #821 (Div. 2)

2022-09-22 15:38:17 116

原创 Codeforces Round #802 (Div. 2) 题解

Codeforces Round #802 (Div. 2)

2022-09-08 20:12:29 427

原创 Codeforces Round #800 (Div. 2) E. Keshi in Search of AmShZ

Codeforces Round #800 (Div. 2) E. Keshi in Search of AmShZ

2022-08-18 17:10:25 151

原创 Codeforces Round #798 (Div. 2) - E. ANDfinity

Codeforces Round #798 (Div. 2) E. ANDfinity

2022-08-18 16:58:26 114

原创 Educational Codeforces Round 123 (Rated for Div. 2) A-E

题目链接:http://codeforces.com/contest/1644A. Doors and Keys水题#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3f#define lson l,mid,rt<<1#define rson mid+1,r,(rt<<1)|1typedef long long ll;const int mx = 3e5 + 10;.

2022-03-12 23:07:33 276

原创 Educational Codeforces Round 112 (Rated for Div. 2) 题解

题目链接:http://codeforces.com/contest/1555A. PizzaForcessolve: gcd是120,但是要处理240之内的最优情况,因为121就不是120+1。#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3ftypedef long long ll;const int mx = 3e2 + 10;int sum[mx];int main(){ mem.

2021-08-03 22:36:51 250

原创 2019牛客暑期多校训练营(第八场)A题(单调栈)

题目链接:https://ac.nowcoder.com/acm/contest/888/A解题思路:将问题转化为计算一个点作为极大全1矩阵的右下角的次数的和。那么可想而知当一个点(i,j)作为右下角时用(i,k)做左下角比(i,q)时的宽要大(j>k>q),如果是小的话,也不会是极大了。所以当(i,j)作为右下角时,他的多个极大值越往左长越大,宽越小。因此我们就需要...

2019-12-04 13:55:37 228

原创 Codeforces Round #603 (Div. 2) 题解

题目链接:https://codeforces.com/contest/1263A - Sweet Problem把最小值分摊给其他两个,然后剩下的再加上最小值#include<bits/stdc++.h>#define x first#define y second#define inf 0x3f3f3f3fusing namespace std;typ...

2019-12-04 13:38:54 315

原创 Educational Codeforces Round 77 (Rated for Div. 2) 题解

题目链接:https://codeforces.com/contest/1260A - Heating #include<bits/stdc++.h>#define inf 0x3f3f3f3fusing namespace std;typedef unsigned long long ull;typedef long long ll;typedef pai...

2019-11-30 21:00:15 253

原创 Codeforces Round #601 (Div. 2) 题解

题目链接:A - Changing Volume水题#include<bits/stdc++.h>#define x first#define y second#define inf 0x3f3f3f3fusing namespace std;typedef long long ll;typedef pair<int,int> pa;con...

2019-11-30 20:34:22 222

原创 Codeforces Round #599 (Div. 2) 题解

题目链接:https://codeforces.com/contest/1243A - Maximum Square水题不说了#include <bits/stdc++.h>using namespace std;const int mx = 1e5 + 50;typedef long long ll;int n; int a[mx];int main(...

2019-11-30 20:21:37 276

原创 The 2019 China Collegiate Programming Contest Harbin Site

题目链接:https://codeforces.com/gym/102394A - Artful Paintings设S[i]表示前i个位置放了i个灯泡,那么就有这么一些关系,0 <= S[i] - S[i-1] <= 1,S[Ri] - S[Li-1] >= Ki,S[n] - (S[Ri] - S[Li-1]) >= Ki由于第三个式子有三个未知数,又...

2019-11-07 16:04:22 464

原创 2019-2020 ICPC, Asia Jakarta Regional Contest (Online Mirror, ICPC Rules, Teams Preferred)

题目链接:https://codeforces.com/contest/1252A - Copying Homework水题#include<bits/stdc++.h>using namespace std;const int mx = 1e5+5;struct node{ int id,x; bool operator<(const node &...

2019-11-06 23:27:22 454

原创 2018-2019 ACM-ICPC Southeastern European Regional Programming Contest (SEERC 2018)

题目链接:https://vjudge.net/contest/339284#overviewA.Numbers待做B.Broken Watchs = input()s = s.split(" ")A,B,C,N = list(map(int,s))n = (N-1) // 2 ret = N*N*N - 3*N*(n)*(n-1) - N - 3*N*(...

2019-11-06 22:53:13 864

原创 CodeForcese 1256F [思维]

题目链接:https://codeforces.com/problemset/problem/1256/F解题思路:任意的翻转都可以认为是翻转若干个长度为2的,交换两个数主要奇数次翻转。两个串可以翻转成一样,那么一定可以再花费一样的翻转次数变成有序的字符串,连续两个相等的字符翻转任意数次是一样的,所以只要有两个字符一样一定可以。接下来就是看冒泡排序的次数了。很明显两个字符翻转偶数次等于...

2019-11-06 20:31:29 272

原创 Codeforces Round #594 (Div. 2) 题解

题目链接:https://codeforces.com/contest/1248A - Integer Points水题#include<bits/stdc++.h>using namespace std;const int mx = 1e5+5;typedef long long ll;int a[mx],b[mx]; int main(){ int ...

2019-11-05 16:00:54 308

原创 CodeForces 1250E [2-sat]

题目链接:https://codeforces.com/contest/1250/problem/E解题思路:首先根据反转的性质有: 有字符串a,b,a的反转A,b的反转B,如果a和b匹配值为K,那么A和B的值也为K 同样a和B匹配值为M,那么A和b的匹配值也为M,因此有对称性那么就可以转换成2-sat问题了,设点i的对立点集是i+n,也就是a和...

2019-11-03 23:03:44 348

原创 CodeForces 1250G [贪心]

题目链接:https://codeforces.com/contest/1250/problem/G解题思路:题目的另一个意思就是每次按动reset意思就是原来的sa,sb(表示a,b现在的积分)变成了sa = sa -min(sa,sb),sb = sb - min(sa,sb),根据这一的性质我们就可以都得到一个结论就是,当只执行到第i轮时,最后一次按下了reset是在第k轮...

2019-11-03 22:53:07 455

原创 hdu 6346 KM算法(bfs的O(n^3))

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6346解题思路:这题卡dfs的KM所以只能用纯N^3的bfs#include<bits/stdc++.h>using namespace std;#define LL long longconst int inf = 0x3f3f3f3f;const LL ...

2019-10-30 18:50:55 650

原创 2019-2020 ACM-ICPC Brazil Subregional Programming Contest 题解

题目链接:http://codeforces.com/gym/102346A.Artwork将相交的圆用并查集合并,最后查询一下是否有一个或者两个在一个并查集里面的圆形成这样的一个封闭#include <bits/stdc++.h>#define x first#define y second#define mid (l+r>>1)#def...

2019-10-30 15:17:41 2172

原创 Comet OJ - Contest #13[A-D]

题目链接:https://www.cometoj.com/contest/71/problemsA.「壶中的大银河」水题B.「龙颈之玉 -五色的弹丸-」用一个双向队里维护一下贪吃蛇某个点的前一个位置方向是啥就好了#include<bits/stdc++.h>#define x first#define y second#define inf 0x3f3...

2019-10-28 16:18:08 219

原创 Codeforces Round #589 (Div. 2) -- 题解

A. Distinct Digits#include<bits/stdc++.h>#define inf 0x3f3f3f3fusing namespace std;typedef long long ll;const int mx = 1e5 + 10;int top;int a[mx];bool check(int i){ bool b[20]; memse...

2019-10-15 20:57:58 306

原创 ICPC Asia Nanjing 2019 网络赛 [李超树]

题目链接:https://nanti.jisuanke.com/t/41306解题思路:一个前提结论就是假定第i个人开始是机洗,那么他前面的肯定都是手洗他后面的都是机洗。这也很好证明,假定我第j个人是手洗,那么j之前的人肯定也都能手洗而不影响结果。那么就有答案当机洗时间是x时,很明显对于一个i是取a[i]+y,还是a[i]+(n-i+1)*x,它们的分界点就是y/(n-i+1...

2019-09-13 16:44:57 216

原创 2019 Asia Nanchang 网络赛 C[线段树矩阵合并]

题目链接:https://www.jisuanke.com/contest/3870?view=challenges解题思路:也就是CF这道题反着过来,这一题变成和右结合。道理还是五个状态,反过来看:1、2都没有2、2后面没有接03、20后面没有接14、201后面没接95、有2019然后用dp[i][j]表示从i转态转移到j转态的最少花费,我们一开始当然是...

2019-09-08 22:39:51 230

原创 2019 年百度之星·程序设计大赛 - 初赛三[1-3]

题目链接:http://bestcoder.hdu.edu.cn/contests/contest_show.php?cid=863A.#include <bits/stdc++.h>using namespace std;const int mx = 2e5 + 10;const int mod = 1e9+7;typedef long long ll;i...

2019-08-31 15:00:46 269

原创 2019 百度之星初赛 [01-04]

题目链接http://bestcoder.hdu.edu.cn/contests/contest_show.php?cid=8621001:对小的暴力枚举#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef complex<double> comp;cons...

2019-08-23 23:30:32 430

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除