
codeforces专题
zy-yz
编程小白一只
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
codeforces733A
某日,一只蚂蚱来到了一片字母草地。草地由n个大写字母组成。蚂蚱一开始在草地的最左边(位置0),它要去往草地的最右边(位置n+1)。这只蚂蚱只在元音字母上跳跃(起点和终点除外)。定义这只蚂蚱的跳跃能力为它一次跳跃能跳过的最远距离。试问,若要让这只蚂蚱顺利到达终点,蚂蚱的跳跃能力最小是多少?下图是样例1的参考图:元音字母有: 'A', 'E', 'I', 'O', 'U','Y'.In...原创 2018-09-06 21:21:38 · 243 阅读 · 0 评论 -
codeforces600B
一个长度为n的数列a[],一个长度为m的数列b[],在a中查找小于等于b[i]的值 二分求解:#include <stdio.h>#include<iostream>#include<algorithm>#include<cmath>#include<math.h>using namespace std;cons...原创 2018-09-27 17:25:38 · 245 阅读 · 0 评论 -
codeforces988B
题意:给n个字符串,要求按照长度排序后,若每个前面的字符串是后面的子串,输出“YES”,并输出结果,否则输出“NO”Input5aabaabacababaabaOutputYESabaabaabaabacabaInput5aabacababaabaababOutputNOInput3qwertyqwer...原创 2018-09-27 21:54:29 · 256 阅读 · 0 评论 -
codeforces 729B
题意:给一个矩阵,对于每一个0元素,计算其上下左右4个方向上有多少个1。并求其和。 这题应用到一个叫前缀和的东西。前缀和,顾名思义,就是给出一个数列s[]={a1,a2,...an...},它的前n项前缀和为S=a1+a2+...+an。当n->∞时,这个就叫做级数。(咦...似乎扯多了...请忽略掉级数那句话)。这道题虽是一道水题,但是用了前缀和的思想,可以试着做一做。代码...原创 2018-10-08 22:12:12 · 198 阅读 · 0 评论 -
codeforces 4C
题意:每当一个新的用户想要注册账号的时候,他会把他想要注册的用户名告诉系统。如果这个系统里之前没有出现过这个用户名,那么这个用户名就会被导入数据库,从而注册成功。但是,如果这个用户名在数据库中已经存在,系统会自动帮助用户建立一个新的用户名,系统将在用户名的后面从1开始添加数字,一旦发现用户名没有注册过,就会帮助用户直接注册该账号(也就是如果用户想注册name这个用户名,但是系统已经有了,于是系...原创 2018-10-20 10:15:36 · 402 阅读 · 0 评论 -
codeforces 515C
题意:给一个数,把它改写为另一个数,要求这个数最大且每一位阶乘求的和==初始数每一位阶乘求和输入3555产量555纯思维题,画个表:(我也是看了题解才会的......)2!= 2!3!= 3!4!= 3!2!2!5!= 5!6!= 5!3!7!= 7!8!= 7!2!2!2!9!= 7!3!3!2!代码如下:#include...原创 2018-10-20 15:45:27 · 176 阅读 · 0 评论 -
codeforces580C
题意:一棵以1为根的树,树上有些点是红的。一个叶子是合法的当且仅当从根到它的路径上出现的连续红点个数不超过m。求有多少个叶子是合法的。Input第一行两个整数n和m(2≤n ≤105,1≤m≤n) 第二行n个整数0或1,如果是1,表示第i个点是红点。 接下来n-1行,每行两个整数x和y,表示树上的一条边。Output输出满足条件的叶子节点数 解析:树(图)的dfs...原创 2018-10-26 16:31:14 · 254 阅读 · 0 评论 -
codeforces478C
题意:共三种颜色气球,r,g,b分别表示它们的个数,现要求每三个气球构成一组,每组不重复,问最多能组成几组? 解析:卡了将近一个小时。。。看了题解后发现其实非常简单:我们首先将r,g,b进行排序,如果最大的气球数>2*(较小气球数之和),则输出较小气球数之和,否则输出(r+g+b)/3。#include<iostream>#include<algori...原创 2018-11-06 16:53:20 · 225 阅读 · 0 评论 -
codeforces379C
题意:给出一堆数,要求它们每个都不同,但总和最小。 解析:模拟题,这个题可以用pair过,也可以用结构体过,(因为它们本质相同)#include<cstdio>#include<cstdlib>#include<iostream>#include<algorithm>using namespace std;const int ...原创 2018-11-12 21:53:08 · 196 阅读 · 0 评论 -
codeforces437C
题意:给一个n个点,m条边的图,每个点有一个权值w,每删去一个点所消耗的能量为与该点相邻的点的权值之和。问消耗的最小能量是多少?ExamplesInput4 310 20 30 401 41 22 3Output40 解析:很基础的一道图论题目,然而我并没有AC出来(QAQ)我的思路是这样的:我们首先将点的权值按贪心思想从大到小排序。这样在删除时大权值的点...原创 2018-11-10 17:48:20 · 246 阅读 · 0 评论 -
codeforces611C
题意:给一个下图这样的矩阵,'.'表示空位置,‘#’表示墙,给一个木块,长度为2个单位,可横放可竖放,问有几种放法?....#..#.#......##.#....##..#.##........解析:这是一个前缀和的问题,我们可将二维矩阵拆成两个一维前缀和:行缀和与列缀和,行缀和即为木块在某一行放置的种数,列缀和同理;然后再分别一行行一列列的加起来,得出结果。代码如下:...原创 2018-11-08 17:42:28 · 417 阅读 · 0 评论 -
codeforces893C
题意:n个人,m对朋友,每寻找一个人传播消息需要花费相应的价钱,但是朋友之间传播消息不需要花费价钱,问最小的花费? 分析:不需要排序,只需要并查集求解即可。将朋友之间用并查集连接起来,然后对于每个集合,寻找最小的花费并加到sum中;对于没有朋友的人,直接把花费加到sum中。#include<iostream>#include<algorithm>#incl...原创 2018-12-05 21:05:00 · 202 阅读 · 0 评论 -
codeforces 888C
C. K-Dominant Character题意:给你一个字符串,要求你找出最小的包含相同字母的字串,并输出它的长度k分析:orz! 这个题从昨晚卡到了今天。。。WA了7发。。。这个题是个模拟题目,思路大概就是:找出每一种字符之间的距离最大值,放到一个数组里,然后对数组排序,找出最大值们中的最小值,就是答案。注意:1、如果每个字符都不同且为1个,就直接输出中间字符2、除了...原创 2018-12-15 16:07:46 · 321 阅读 · 0 评论 -
codeforces 1092C-Prefixes and Suffixes
Ivan wants to play a game with you. He picked some string ssnnYou don't know this string. Ivan has informed you about all its improper prefixes and suffixes (i.e. prefixes and suffixes of lengths fr...原创 2018-12-22 10:12:56 · 306 阅读 · 0 评论 -
Codeforces 1131 F.Asya And Kittens
Asya loves animals very much. Recently, she purchased nn kittens, enumerated them from 11 and nn and then put them into the cage. The cage consists of one row of nn cells, enumerated with integers fro...原创 2019-02-27 16:13:51 · 241 阅读 · 0 评论 -
codeforces918B
WYBZDYGJSMMZ有n个用户的用户名与ip地址的对照表。WYBZDYGJSMMZ现在要对这些IP地址发送m条指令,格式为:指令名 ip名; 但是他记忆力不太好,具体症状表现为,他压根就记不住哪个ip对照哪个用户。那怎么办呢,所以他想实现一个功能就是他发送指令后,程序能够新输出一行:指令名 ip名; #用户名现在要求你实现这个程序。Input第一行两个整数,n和m (1≤ n...原创 2018-09-21 18:11:41 · 259 阅读 · 0 评论 -
codeforces456B
题意:给一个数n,求(1^n + 2^n + 3^n + 4^n) mod 5,n (0 ≤ n ≤ 10^100000)。根据题意,这个n给的太大了,所以此题是规律题,打表得到循环节是[0,0,0,4],又根据数论,如果一个数可以被4整除,则只要这个数的最后两位被4整除即可。所以我们只取后两位%4即可。附:一个数可以被4整除,则只要这个数的最后两位被4整除的证明:任何一个数能写成...原创 2018-09-20 21:49:21 · 241 阅读 · 0 评论 -
codeforces758B
在这个世界上没有什么是永恒的,Kostya在看到四色花环上死去的花后明白了这个道理。现在他有一个目标是取代所有死去的花,但他不知道每种颜色的花需要多少朵。保证每种颜色至少有一朵花没有死。众所周知,花环包含四种颜色的花:红,蓝,黄,绿。花环是这样做的:四个连续的花不会有相同的颜色。举个例子,花环可以长这样 "RYBGRYBGRY", "YBGRYBGRYBG", "BGRYB",但不能长这样...原创 2018-09-11 15:00:14 · 235 阅读 · 0 评论 -
codeforces767A
从前有一座叫做零食城的城市,有n种不同大小的零食会以一定的顺序降临到零食城, 而零食城的人要将这些零食从大到小自下而上摆成一座零食塔。然而,他们遇到了一些困难。每天都会有一个新的零食降临到这个城市,由于零食不一定按照从大到小的顺序降临,所以并不是每天都可以将新降临的零食直接放到零食塔的塔顶,必须等待所有比他大的零食都降临之后才可以。为了不触怒天神,每一个零食都要尽可能早地放到零食塔上。请你...原创 2018-09-08 12:40:48 · 312 阅读 · 0 评论 -
codeforces798B
麦克有 n 个字符串 s1, s2, ..., sn 都只包含小写字母。一次操作可以删除 si, 的第一个字母并将它加到字符串的末尾。 举个例子,字符串 "coolmike" 经过一次操作后会变成 "oolmikec".现在麦克想知道:最少多少次操作后可以把所有字符串变相同。Input第一行包含一个整数 n (1 ≤ n ≤ 50) — 字符串的数量。之后 n 行,每行包含一个字符...原创 2018-09-11 17:11:45 · 330 阅读 · 0 评论 -
codeforces602A
Input输入的第一行包括两个整数n和x(1 ≤ n ≤ 10, 2 ≤ x≤ 40),分别代表第一个数字的数位个数和进制,第二行包括n个整数,代表a从高位开始的各个数位输入的第三行包括两个整数m和y(1 ≤ m ≤ 10,2 ≤ y≤ 40, x≠ y),分别代表第二个数字的数位个数和进制,第四行包括m个整数,代表b从高位开始的各个数位Output若a<b,输出‘&...原创 2018-09-09 10:55:52 · 182 阅读 · 0 评论 -
codeforces 989B
题意:字符串长度为n,'.'可以变成‘0’或‘1’,问是否存在两个字符不相等。 由于数据范围<2000,所以我用的是暴力枚举的方法,即用for从头遍历,枚举所有可能出现的情况。代码如下:#include <stdio.h>#include<iostream>#include<algorithm>#include<string&...原创 2018-09-17 11:55:46 · 231 阅读 · 0 评论 -
codeforces902B
题目给出一颗有根树,请你输出将这棵树上每个节点v染成对应的颜色Cv,所需要的最少的操作。这棵树的树根是节点1,标号从1到n染色操作是这样的,选择一个节点v和颜色x,一次染色操作会把节点v所在的子树的所有节点都染成x。Input第一行是一个整数n代表树的节点个数(2<=n<=10^4)第二行有n-1个整数p2,p3…pn(1<=pi<i),代表i节点和pi有一条边...原创 2018-09-13 16:52:52 · 364 阅读 · 0 评论 -
codeforces872B
给出一个有n个整数的数组 a1, a2, ..., an 和一个整数k。你被要求把这个数组分成k 个非空的子段。 然后从每个k 个子段拿出最小值,再从这些最小值中拿出最大值。求这个最大值最大能为多少? Input第一行输入两个整数 n 和 k (1 ≤ k ≤ n ≤ 105) — 数组a 的大小和要求分成子段的数目第二行包含 n 整数 a1, a2, ..., an ( ...原创 2018-09-13 21:10:38 · 281 阅读 · 0 评论 -
codeforces96B
大家都知道,正数整数是幸运的,如果它们的十进制表示不包含4和7以外的数字。例如,数字47,744,4是幸运的,5,17,46,7不是。 幸运数字超级幸运,如果它的十进制表示包含相等数量的数字4和7.例如,数字47,7744,474477是超级幸运,4,744,467不是。 有一天,Petya遇到了一个正整数n。 帮助他找出大于等于给定的数字的最小的超级幸运数字.Input输入一个正整数n(...原创 2018-09-24 17:24:41 · 466 阅读 · 0 评论 -
codeforces279B
题意:求最长的连续子序列。。。input4 53 1 2 1output3input3 32 2 3output1 <法一>由于数据范围是(1 ≤ n ≤ 10^5; 1 ≤ t ≤ 10^9) ,不会超时,可以直接模拟,不会超时。 #include <stdio.h>#include <assert.h&...原创 2018-09-25 14:48:41 · 265 阅读 · 0 评论 -
codeforces131B
题意:给n个数,问这些数里相反数有几对。0与自己成相反数。Input5-3 3 0 0 3Output3Input30 0 0Output3NoteIn the first sample the couples of opposite clients are: (1,2), (1,5) и (3,4).In the second sa...原创 2018-09-25 15:43:03 · 179 阅读 · 0 评论 -
codeforces 435B
Pasha 有一个正整数 a,不含前导 0 。今天,他认为这个数太小,希望把它变得更大一些。不幸的是,Pasha 只能交换这个整数的两个相邻的十进制数字。请帮助 Pasha 计算出,他在不超过 k 次交换的条件下,能够取得的最大数是多少。输入输入一行,包含两个整数 a 和 k (1 ≤ a ≤ 10^18; 0 ≤ k ≤ 100)。输出打印 Pasha 在执行不超过 k 次交...原创 2018-09-20 13:25:34 · 182 阅读 · 0 评论 -
codeforces675B
这幅画是一个3×3的正方形,每个单元格包含一个从1到n的单个整数,不同的单元格可能包含不同或相等的整数。 四个正方形2×2中的每个正方形中的整数之和等于左上方正方形2×2中的整数之和。 四个元素a,b,c和d是已知的,其位置如下图所示。帮助Vasya找出满足上述所有条件的不同方块的数量。注意,这个数字可能等于0,这意味着Vasya记得有些不对劲。如果存在包含不同正方形中的两个不同整数...原创 2018-09-20 20:20:16 · 235 阅读 · 0 评论 -
codeforces851B
Arpa and an exam about geometry问题描述给你一张纸上的3个点,A,B,C问你能不能用手按住纸上的一个位置并且旋转,使得新的A取代了B的位置,新的B取代了C的位置。Input第一行6个整数,表示三个点的坐标Ax,Ay,Bx,By,Cx,Cy. 每个数字的绝对值<=10^9Output如果可以就输出"Yes",否则输出"No".Exam...原创 2018-09-20 20:58:20 · 1518 阅读 · 0 评论 -
CodeForces Gym 101669
C Christmas Tree 待补...D Harry Potter and The Vector Spell 题意:给出一个n行m列的仅含有数字0 1的矩阵,求矩阵的秩,注意题目中有句话:每列为1的元素只有两个分析:并查集思想,用vector存好图后,遍历每列,把1所在的点用边连起来,最后数有几条边就好#include<...原创 2019-05-02 16:09:35 · 421 阅读 · 0 评论