随笔分类 -  题解

摘要:CF的题意真是令人看不懂哇!谢谢 @lfc20070515 在题解中的题目翻译 本体的主要思路是贪心,先把每一位加起来,如果已经 >= k直接输出0 不然sort一遍,因为把小的数变为9会比大的数变为9好得多,如果这是每位的和 >= k,输出 代码,1.05s: #include <iostream 阅读全文
posted @ 2020-10-29 18:58 HappyBobb 阅读(8) 评论(0) 推荐(0)
摘要:这题比较简单,套用公式就好了,不用转int,直接用double算就OK的,677ms,目前第3 代码: #include <iostream> #include <algorithm> using namespace std; double m[10], w[10], score[10]; doub 阅读全文
posted @ 2020-10-29 17:55 HappyBobb 阅读(11) 评论(0) 推荐(0)
摘要:本题难度不大,就像第一篇题解,就是暴力算,但这个数据类型是个坑,还真只能用long double。 unsigned long long long long double unsigned int 都会WA 害得我就这水题WA了几次 那么,代码: #include <iostream> using 阅读全文
posted @ 2020-10-29 17:38 HappyBobb 阅读(11) 评论(0) 推荐(0)
摘要:我这不知道什么时候做的了……思路和大家应该是一样的了,不说多的了,就贴个代码吧: #include <cstdio> #include <iostream> using namespace std; char a[1005][1005]; int cn[1005], cm[1005]; int ma 阅读全文
posted @ 2020-10-28 21:06 HappyBobb 阅读(8) 评论(0) 推荐(0)
摘要:这道题目是最简单的贪心问题啦!用STL的二元结构体pair或者用struct,class都可以解决的! 那么我用的是pair,比struct似乎是慢了一点,1.27s,自定义排序 + sort #include <iostream> #include <utility> #include <algo 阅读全文
posted @ 2020-10-28 19:31 HappyBobb 阅读(9) 评论(0) 推荐(0)
摘要:这题一开始我还想着暴力,结果暴力刚刚打出来,TLE: #include <iostream> #include <cstring> using namespace std; char s[200005]; int main() { int n, ans = 0; cin >> n >> s; n-- 阅读全文
posted @ 2020-10-27 20:27 HappyBobb 阅读(8) 评论(0) 推荐(0)
摘要:这道题目有意思!dalao都用着hash,表示不懂,只好跟着第一篇题解的思路喽!代码量比hash少得多得多啊! 其实只要将n先除以2,前半段匹配后半段,后半段匹配前半段,注意n % 2 == 0要特判,不然会WA 3个点,0分! #include <iostream> #include <cstri 阅读全文
posted @ 2020-10-25 21:30 HappyBobb 阅读(9) 评论(0) 推荐(0)
摘要:摆明的递归题目,先来看看解题思路 首先while读入char类型的ch 如果是]那么就break 如果是T就读入空格然后再构造char类型的字符和string的字符串,每次读入一直到[停止读入,并且随时将字符串加上这个字符,再递归结果乘以这个字符串转成数字的结果 另外的前进后退就简单了 代码,20m 阅读全文
posted @ 2020-10-24 16:17 HappyBobb 阅读(21) 评论(0) 推荐(0)
摘要:这是个集合的题目,因为大家都知道set可以自动去重,我们就借助这个特性去做。 for循环n次,每次读入这个字符串然后遍历每个字符,是'/'就insert,因为一开始也是'/'那就输出size() - 1,还要注意的是因为最后不是'/',循环完要再insert一次: #include <iostrea 阅读全文
posted @ 2020-10-24 15:42 HappyBobb 阅读(8) 评论(0) 推荐(0)
摘要:这个题目的难度似乎有点难啊!!! 提示1很简单,只需要把字母转为.,空格以及其他字符还是其他字符 提示2的难度稍稍增加,但也难不过我们!我们先找到三分之一,四舍五入用round 提示3是最坑人的,难啊!先要在提示2记录下来三分之一的最后一个字符所在的下标,提示3从下表这里开始往后找元音,找得到那就先 阅读全文
posted @ 2020-10-22 21:12 HappyBobb 阅读(28) 评论(0) 推荐(0)
摘要:这个题目处理不难,但是这个读入真是坑爹啊! 说说我的经历: 代码没问题,scanf提交,MLE。下载数据,什么玩意1.20s,1ms都不用就出结果了,这…… cin提交,WA3个点,\n出的乱子 cin.get以及getchar提交,MLE…… 终于,AC喽: #include <iostream> 阅读全文
posted @ 2020-10-20 21:10 HappyBobb 阅读(14) 评论(0) 推荐(0)
摘要:本题是练习递归的好题目!!! 先说下思路吧: 首先,用scanf(%c, ch) != EOF一直读入 如果是'a'的话ans + 1 如果是左括号那么就将ans加上再次递归的结果,最后可以得到括号中全部的结果 如果是右括号就返回ans,因为括号匹配,不可能突然返回答案的 如果是|那么就返回ans和 阅读全文
posted @ 2020-10-19 18:45 HappyBobb 阅读(27) 评论(0) 推荐(0)
摘要:这题目有点意思!一开始一定要读清楚题意,第一天看到题,第二天才想到其实吧,这个t,也就是移动的位数一定是要使结果的E最多的,所以其实我们可以在原串中找到出现次数最多的字母,然后往回减(因为是密文转明文)需要用到mapAC此题,12ms: #include <iostream> #include <m 阅读全文
posted @ 2020-10-18 13:11 HappyBobb 阅读(35) 评论(0) 推荐(0)
摘要:这个题目主要是怕TLE,不用hash之类的东西,map就轻松搞定,但细节值得留意 首先先分析一下算法,每次读入一个字符,如果是间隔符就把ans加到前面这个单词上,否则我们创造一个字符串去累加这个单词 (很多细节导致WA) 底下AC代码: #include <iostream> #include <m 阅读全文
posted @ 2020-10-17 20:57 HappyBobb 阅读(10) 评论(0) 推荐(0)
摘要:是个模拟题目,每次将a * 10并且把a %= b,判断a÷b是否为c就好了,代码如下: #include <iostream> using namespace std; int main() { int a, b, c; cin >> a >> b >> c; for(int i = 1; i < 阅读全文
posted @ 2020-10-15 17:49 HappyBobb 阅读(10) 评论(0) 推荐(0)
摘要:模拟即可,只需要把输入的字符串中WUB删掉,但重点是要处理空格! 首先通过样例2可以发现,如果两个字符串中有WUB,那么会产生一个空格。 那如何处理呢?很简单,遍历一遍,发现前面那个是WUB就输出一下".",代码如下,1.63ms,有注释: #include <iostream> #include 阅读全文
posted @ 2020-10-15 17:30 HappyBobb 阅读(5) 评论(0) 推荐(0)
摘要:说要‘c’少,c可以一个都没有,水 首先只要顺序输出bbaa就永远不可能有3位的回文,比如: 输入: 15 输出: bbaabbaabbaabba 代码如下: #include <iostream> #include <cstring> using namespace std; string ans 阅读全文
posted @ 2020-10-14 19:53 HappyBobb 阅读(12) 评论(0) 推荐(0)
摘要:STL大法好哦! 本题我采用的是unordered_map+string+暴力(n <= 200,限时2s暴力挺快的,不会TLE的) 那怎么做呢? 首先,我们读入一个字符串,用我们双重循环,枚举自区间,注意每次map都要clear,每次读取map的size并和maxn(max好像定义过,再定义成变量 阅读全文
posted @ 2020-10-13 20:30 HappyBobb 阅读(6) 评论(0) 推荐(0)
摘要:其实我们只需要按照程序模拟即可,读入一个字符串,在前面加前导0,同时做一个判断回文函数: bool huiwen(string s) { string x = s; reverse(x.begin(), x.end()); return x == s; } 接下来511ms的简单代码来啦: #inc 阅读全文
posted @ 2020-10-13 20:20 HappyBobb 阅读(4) 评论(0) 推荐(0)
摘要:有些人直接找规律,我是不知道的qwq,于是只好模拟,反正不会超时哈哈哈 代码(long long,用不用无所谓,代码有注释): #include <iostream> using namespace std; int main() { long long a, b, x = 1, w = 1; ci 阅读全文
posted @ 2020-10-12 18:34 HappyBobb 阅读(6) 评论(0) 推荐(0)