刷题 FIGHTING
加油
我是个菜鸡.
任何想去的地方,都没有捷径。
展开
-
Balanced Playlist CodeForces - 1237D
Balanced Playlist CodeForces - 1237D题意:给出n首歌的循环播放列表。每首歌有一个欢乐值。播放到一首歌,这首歌的欢乐值的两倍小于遇到过的最大值,则停止。求出任意一首歌起始播放时,最多能播放多少歌。思路:#include <iostream>#include <cstdio>#include <cmath>#include <string>#include <cstring>#include <原创 2020-07-31 22:47:03 · 129 阅读 · 0 评论 -
Codeforces Round #659 (Div. 2)[A题 C题]
A. Common Prefixes这个题虽然过了但是写的太麻烦了,思路太混乱了!!题意:就是给你n个a[i] 代表前后两个串的相同前缀数目。所以你需要输出n+1个字符串思路:你上来输出一个随便一个,然后后面的都根据前面的来改变就可以了,你上来就定义一个长度200的string s,让他有200个‘a’;然后你去枚举i,到a[i]的时候 ,你只需要改变s[a[i]] 这个就行了,然后问题是你改变的时候可别再去枚举’a’-'z’了,你就 光枚举‘a’ ‘b’ 就行了啊!如果s[a[i]]==‘a’原创 2020-07-25 21:06:33 · 110 阅读 · 0 评论 -
暑期嗨十之A - A CodeForces - 1217D(拓扑排序)
CodeForces - 1217D 题意:给定一个无自环、无多重边的有向图,并且给定好染色图的定义:如果一个有向图每条边都有颜色,并且一个环中不止有一种颜色,那么这个图称为一个好染色图。现在要你求最少多少种颜色,可以把给定的有向图染成好染色图思路:第一个好理解,第二个要怎么想呢,如果有环,那构成这个环的边,肯定是一部分由小顶点连向大顶点,一部分由大顶点连向小顶点,那么只要把这两种边分别染不同的颜色,然后这个题就转换成拓扑排序判断有环无环#include <iostream>#inc原创 2020-07-25 18:20:04 · 128 阅读 · 0 评论 -
暑期嗨十~
CodeForces - 1217C 题意:一个0 1组成的串,定义了一种好(子)串:长度和那一段串的二进制相等,问你有多少个好字串?思路:我们可以发现一个 2e5 长度(最长)的字符串,用十进制来表示最多不超过 20 位就可以表示 2e5 长度。我们可以遍历原始的字符串,遇到 1 之后我们就从这一位开始往后找(最多 20 位)看看有多少子串满足即可。当这个十进制数字大于当前长度和前导零数量时就break当前循环#include <iostream>#include <cstdio原创 2020-07-24 21:48:21 · 97 阅读 · 0 评论 -
暑期嗨九~
CodeForces - 1216D 这个题自己读了n遍,而且他的提议转化也很好!题意:n种剑,每种x个,y个人进来拿,每个人那z个,这z个都是一样的,问你,然后给出每种剑剩余的个数,求最少有多少个人,拿了多少把剑。思路:可以思考一下,剩余个数跟人的多少有啥关系?如果剩余个数越多,每个都越接近x,那么不就是 人少了吗?所以 你就是求他们被拿走的最小公约数,但是它不给你x,那么你就让x=max(a[i]);不就行了吗?这样拿的人就更少了。所以就是算 被拿走数量的最小公约数!CodeForces - 1原创 2020-07-23 22:26:15 · 115 阅读 · 0 评论 -
Codeforces Round #658 (Div. 2)【没AC的题目】
C,Prefix Flip题意:有个反转操作 就是你选一个长度n,然后 串a的前n个字符 0变1;1变0;然后前后顺序颠倒。现在就是你需要把a变成b,然后把你每次操作的前缀长度输出出来。思路:当时做题真的是无厘头啊,题目说一定会有答案,一般这种题目都是有巧的地方吧!有个思路感觉很好。把a转成 00…00,全为零的,然后也把b转成00…00;然后输出a的转换过程和b的逆 转换过程。那么a怎么转换成全0 呢?看下面的例子:(https://blog.csdn.net/jziwjxjd/article原创 2020-07-22 21:25:24 · 99 阅读 · 0 评论 -
暑期嗨八~(E题还要加强理解!!!)
CodeForces - 1234D 题意:一串给你多次这俩命令 2命令是需要输出东西的。思路:自己刚开始还以为普通的做就行,然后就TL了。用26个set来存储每个字母在字符串中出现的位置,因为STL中set是排序的,所以每次查询时,只需要遍历26个字母,查询其在字符串中第一次出现的在l之后的位置,若该位置比r要小,说明这个字符存在于这个区间之内,答案加1。更新时只需要在原串位置的字符对应的set中去除这个位置,并在新替换的字符对应的set中存入该位置即可。#include <iostrea原创 2020-07-21 20:49:24 · 173 阅读 · 0 评论 -
Codeforces Round #657 (Div. 2)【一个题没出!!!!】
A. Acacius and String题意:?可以修改成任意字符,判断这个串中是不是只含一个字串"abacaba"。思路: 当时自己纠结点是:那个?改了之后万一出来两个了怎么办,串不就变了吗等等其实每次就是挨着判断就行了,你改完就在去循环一次啊,反正不怕麻烦!!!!!首先就是 第一个for循环,你每次取7个字符,然后 开始下一个for循环,在第二个for循环就是判断这7个是不是那个串,遇到?不要着急改。遍历结束如果这个满足那个串,你就再用一个for循环 判断后边还有没有,这个时候?就改成d,这样原创 2020-07-20 22:12:55 · 165 阅读 · 0 评论 -
7.20-暑期嗨七
CodeForces - 1238C 这个题wrong了好几次才过。思路:假设你在h,那你看h-2那个地方有木有板没有的话 你这个时候需要花钱将x-1的板弄出来,然后你到达h-1;如果h-2有板,你就直接去h-就可以了。#include <iostream>#include <cstdio>#include <cmath>#include <string>#include <cstring>#include <stack>原创 2020-07-20 19:21:21 · 128 阅读 · 0 评论 -
Codeforces Round #656 (Div. 3)
A. Three Pairwise Maximums题意:x=max(a,b);y=max(a,c),z=max(b,c),输出满足的a,b,c;思路:直接看分三种情况a最大,b最大,c最大。某一项最大了,剩下的那俩就输出小的那个就可以啦!#include <iostream>#include <cstdio>#include <cmath>#include <string>#include <cstring>#include &原创 2020-07-18 21:13:35 · 123 阅读 · 0 评论 -
7.15
A - A CodeForces - 1272C 题意:给你串s,再给你几个字母,你们用这几个字符能组成几个s的连续的子串。思路:首先记录那几个字母的 值,然后在s中遍历,如果某一段长度为a,那么 子串数就是 (a*(a+1)/2)就OK了#include<iostream>#include<cstring>#include<cstdio>#include<cstdlib>#include<cmath>#include<str原创 2020-07-15 16:17:12 · 169 阅读 · 1 评论 -
☆☆暑期嗨补一(7.14)
A - A CodeForces - 1257B Recently Petya walked in the forest and found a magic stick.Since Petya really likes numbers, the first thing he learned was spells for changing numbers. So far, he knows only two spells that can be applied to a positive integer:原创 2020-07-14 21:31:32 · 254 阅读 · 0 评论 -
Educational Codeforces Round 91 (Rated for Div. 2) 题解报告
A - Three Indices CodeForces - 1380AYou are given a permutation p1,p2,…,pn. Recall that sequence of n integers is called a permutation if it contains all integers from 1 to n exactly once.Find three indices i, j and k such that:1≤i<j<k≤n;pipk.Or原创 2020-07-13 22:13:18 · 455 阅读 · 0 评论 -
(不好!)7.11训练(codeforce1249
CodeForces 1249AYou are a coach of a group consisting of n students. The i-th student has programming skill ai. All students have distinct programming skills. You want to divide them into teams in such a way that:No two students i and j such that |ai−aj|原创 2020-07-11 22:12:51 · 311 阅读 · 0 评论 -
7.10训练(CodeForces 1251)
CodeForces 1251A:点我呀Recently Polycarp noticed that some of the buttons of his keyboard are malfunctioning. For simplicity, we assume that Polycarp’s keyboard contains 26 buttons (one for each letter of the Latin alphabet). Each button is either working f原创 2020-07-10 20:40:26 · 390 阅读 · 0 评论 -
7.9训练
A题A题链接A team of three programmers is going to play a contest. The contest consists of n problems, numbered from 1 to n. Each problem is printed on a separate sheet of paper. The participants have decided to divide the problem statements into three parts:原创 2020-07-09 12:50:56 · 246 阅读 · 0 评论 -
7.8训练
A题B题You are given a binary string of length n (i. e. a string consisting of n characters ‘0’ and ‘1’).In one move you can swap two adjacent characters of the string. What is the lexicographically minimum possible string you can obtain from the given on原创 2020-07-08 19:25:35 · 326 阅读 · 0 评论 -
7.6日训练赛 (刚进群,错过了。。)
A题You are given two bracket sequences (not necessarily regular) s and t consisting only of characters ‘(’ and ‘)’. You want to construct the shortest regular bracket sequence that contains both given bracket sequences as subsequences (not necessarily cont原创 2020-07-07 22:19:32 · 275 阅读 · 0 评论 -
Codeforces Round #654 (Div. 2) 题解
A题题意:给你一个数n,它代表着你有1-n这些数,通过组合(相加的方式),使得相等的数字最多!+++++++++++++++++++++++++++++++++++++++++++++++++++++++++思路:想到的肯定就是组合成最大的那一个数啊,但自己第一想法是去算前面的和,这种想法是十分的错误!其实你仔细一想 他们不就是收尾对应的数字相加之后就等于那个n嘛?所以呀,代码如下。奇数的时候输出n/2+1,否则输出n/2;#include<iostream>#include<原创 2020-07-06 21:13:24 · 240 阅读 · 1 评论