![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ACM_codeforce
TouchDreamer
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #603 (Div. 2), problem: (E) Editor
题目大意给你一连串的操作,L, R分别代表移动光标操作,其他字符表示在当前光标位置插入一个字符。如果该位置有字符,那么进行替换。让你判断当前输出的序列是否合法,如果合法,那么括号的最大嵌套深度是多少?思路首先这个序列的长度不会超过10610^6106的长度,对于(我们可以看成在该位置加1,对于)我们可以看成在该位置减一,然后我们对该序列求前缀和,因为需要保证输出的括号序列合法,那么需要判...原创 2019-12-01 13:20:28 · 191 阅读 · 0 评论 -
codeforces 788 A. Functions again(最大连续子序列和)
题目分析 这道题因为n达到了1e5,所以必须要优化,我们可以把所有的abs(f[i]-f[i-1])处理出来,这样因为是正负交替的,这样我们就可以求2遍最大连续子序列和就可以了。时间复杂度O(n).#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;原创 2017-04-15 15:47:51 · 329 阅读 · 0 评论 -
codeforces 788B Weird journey (欧拉路)
题目分析 这道题读到题面我想到了欧拉通路,欧拉通路是这样的,如果一个图是连通图,并且对于图上的每个点的度数都是偶数,只有2个点的度数是奇数,那么我们可以选择这2个点分别作起点和终点,这样必然存在欧拉路径。本题要求m-2条路走2遍,还有2条路走一遍,因为每一条无向边对应2条有向边,那么很明显每个点的入度都是偶数,这样的话我们只能够选取具有公共节点的边,这样处理过后才会剩下2个奇度节点,同样对于起点原创 2017-04-15 15:43:08 · 243 阅读 · 0 评论 -
Codeforces Round #403 (Div. 1, based on Technocup 2017 Finals) A. Andryusha and Colored Balloons
题目分析 这道题需要求的要多少种颜色,很明显就是一个节点连接的边数最大值加一。这样再dfs进行染色,注意要保证该点与父节点和父父节点不一样,然后就可以了,不明白的直接看代码。#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int ma原创 2017-03-14 19:04:21 · 256 阅读 · 0 评论 -
Codeforces Round #387 (Div. 2)
A - Display Size#include <cstdio>#include <cmath>#include <cstring>#include <iostream>#include <algorithm>using namespace std;int main(){ int n; while(scanf("%d", &n) !=EOF){ for(i原创 2017-01-04 18:44:48 · 285 阅读 · 0 评论 -
Codeforces Round #379 (Div. 2)
A. Anton and Danik#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int maxn = 1e5+100;char s[maxn];int main(){ int n; while(scanf("%d", &原创 2017-01-04 13:17:19 · 205 阅读 · 0 评论 -
Codeforces Round #383 (Div. 2)
A. Arpa’s hard exam and Mehrdad’s naive cheat 找规律即可。#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;int main(){ int n; while(scanf("%d", &n)原创 2016-12-16 12:21:26 · 280 阅读 · 0 评论 -
Codeforces Round #380 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 2)
A. Interview with Oleg 这道题主要就是判断ogo,如果前一个ogo与后一个ogo相连(也就是说前一个ogo的最后一个o作为后一个ogo的最前面的o),那么可认为这些ogo是一个部分,用∗∗∗***代替即可。#include <cstdio>#include <vector>#include <cstring>#include <iostream>#include原创 2016-11-21 11:47:26 · 302 阅读 · 0 评论 -
Codeforces Round #381 (Div. 1)
A. Alyona and mex 这道题就是使The mex of a set S最大,那么很明显直接找到最小的区间,然后就可以找到最小的The mex of a set S为n,然后对于构造这个序列为循环的(0~n-1),因为这样每个给定的区间的The mex of a set S至少为n。#include <cstdio>#include <cstring>#include <ios原创 2016-12-04 13:03:03 · 281 阅读 · 0 评论 -
Codeforces Round #360 (Div. 1)
A NP-Hard Problem 一道染色的题目,跟上次写过的一道现场赛的题目很像,简单处理一下即可。#include <cstdio>#include <vector>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int maxn = 1e5+100;int原创 2016-11-20 11:50:11 · 445 阅读 · 0 评论 -
Codeforces Round #361 (Div. 2)
A. Mike and Cellphone 模拟即可。#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;char s[20];int main(){ int n; while(scanf("%d", &n) != EOF){原创 2016-11-29 20:41:33 · 197 阅读 · 0 评论 -
Codeforces Round #382 (Div. 2)
A. Ostap and Grasshopper 简单bfs。。#include <queue>#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;const int maxn = 105;char s[maxn];int n, k, vis[m原创 2016-11-29 19:34:46 · 223 阅读 · 0 评论 -
codeforce 251 A(二分或者尺取法或者单调队列)
二分#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;#define LL long longconst int maxn = 1e5+100;LL a[maxn];int main(){ LL n, d; while(scanf("%原创 2016-10-19 19:49:48 · 311 阅读 · 0 评论 -
Technocup 2017 - Elimination Round 1 A题
吐槽 今天真的是蠢哭了,A题错了2个小时,很强势。主要原因在于我认为这道题不用long long存也可以,但是事实并不是这样的,不用long long中途可能会tle,re,我用了深搜和广搜2种方法去写,但是还是写不出了,第五组错了,赛后数据一看,第五组是一个大数据,我发现了问题,改成long long后过了。留个文章提醒自己。。。DFS版#include <cstdio>#include原创 2016-10-15 20:42:13 · 645 阅读 · 0 评论 -
codeforces C. Coloring Trees
题目分析 一道dp的题目,状态很好定义,dp[i][j][k]表示第i个位置为颜色j并且此时树的beauty为k需要的最少的颜料,但是在写状态转移方程的时候我发现自己用了4重循环,我以为这道题会超时,于是没敢下手,但是自己也想不出来优化,于是自己看了一下别人的代码,发现4重循环可以过,于是自己就写了一下,注意状态转移方程,还有状态的初始化问题。#include <cstdio>#includ原创 2016-09-07 11:42:51 · 363 阅读 · 0 评论 -
欧拉回路算法学习
欧拉回路 定义: 给定无孤立结点图G,若存在一条路,经过G中每条边有且仅有一次,称这条路为欧拉路,如果存在一条回路经过G每条边有且仅有一次,称这条回路为欧拉回路。具有欧拉回路的图成为欧拉图。 无向图: 图连通,所有点都是偶数度,或者只有两个点是奇数度。当所有点是偶数度时欧拉路起点可以是任意 点;当有两个奇数度点时起点必须是奇数度点。 有向图: 图连通,所有点出度=入度,或原创 2016-10-09 13:18:11 · 968 阅读 · 0 评论 -
codeforces 723 A,B,C,D
A - The New Year: Meeting Friends 水题,中位数。。。#include <cstdio>#include <iostream>#include <algorithm>using namespace std;int main(){ int a,b,c; while(scanf("%d%d%d", &a, &b, &c) != EOF){原创 2016-10-08 20:50:03 · 449 阅读 · 0 评论 -
Code Forces 55 D. Beautiful numbers(数位DP)
题目分析 cf上的D题还是很有水准,出的题不难,一眼就能知道什么意思,也很容易想到一些东西,但是如果不多加一下处理,就不能成功的解决这道题。这道题真的是一道好题,感觉特别开动人的脑经。 首先我们要求Beautiful numbers,那么我们怎么求呢,肯定要求已经加进去的各位数字的最小公倍数了,只要最后处理到头得到的那个数能够整除这个数的所有位数的最小公倍数就可以,但是你以为这样就够了吗?原创 2016-07-22 12:25:16 · 281 阅读 · 0 评论