随笔分类 -  Codeforces

摘要:原题链接 这题自己没想出来,看大佬的博客才恍然大悟,字符串哈希nb! 题意: 给定字符串,一个(k-回文串)s定义为: s串是回文串,且s[1,n/2]是((k-1)-回文串) (非回文串是(0-回文串)) 要求计算出给定字符串所有前缀的k,并输出他们的k的和 数据范围:n<=5e6 思路: 令d[ 阅读全文
posted @ 2021-04-05 21:22 beatlesss 阅读(86) 评论(0) 推荐(0)
摘要:原题链接 居然一时没反应过来这是扩欧,我是sb 题意:给你一条直线方程,问你能否在找到两个整数点,满足直线方程。 思路:\(Ax + By = C\), 求x和y的整数解,这不是扩欧吗?所以直接扩欧算一波就行,注意检验算出来后的符号即可。 代码如下 #include<bits/stdc++.h> # 阅读全文
posted @ 2021-04-05 19:02 beatlesss 阅读(72) 评论(0) 推荐(0)
摘要:原题链接 题意:给你一个数组,问你一段连续的区间满足区间最大值和最小值的差不超过K的区间最大长度是多少?具体有哪些区间? 思路:由于RMQ我写的少,直接手撸线段树,然后双指针走即可,复杂度$O(nlogn)$ 代码如下 struct node{ int l, r; int maxd, mind; } 阅读全文
posted @ 2021-04-05 15:37 beatlesss 阅读(76) 评论(0) 推荐(0)
摘要:原题链接 这题对我这个菜鸡来说,实在是太难了,捣鼓了半天才看懂大佬的代码。 题意:给你一个环,环上每个点都有一个权值$h_i$让你求出有多少数对$(i, j)$,存在一条从$i$到$j$的弧满足弧上的所有数都小于等于端点$h_i和h_j$. 思路:首先遇到的就是对环的操作,很显然直接在环上操作是不那 阅读全文
posted @ 2021-04-04 02:49 beatlesss 阅读(115) 评论(0) 推荐(1)
摘要:题目链接 这一场打的又很差,我是fw,C想不出来。 A题 题意:给你一个字符串,问你有没有办法往里添一个'a',使得它不是一个回文串。 思路:显然只有整个字符串全是'a'才无解,否则对字符串进行扫描,对称位置不是'a'的地方放'a'即可。 代码如下 char s[N]; int main() { I 阅读全文
posted @ 2021-04-04 02:12 beatlesss 阅读(335) 评论(0) 推荐(1)
摘要:原题链接 这题我没想到怎么做,感觉特殊情况很多,学习的其它大佬的做法。 题意:给你一个括号序列,让你求长度最大的合法括号子串,以及子串的数目。 思路:先从左到右扫描,遇到'('就cnt ++,遇到')'并且cnt > 0,就标记 st[i] = true, 表示该右括号合法,然后cnt --。反之从 阅读全文
posted @ 2021-04-03 12:59 beatlesss 阅读(107) 评论(0) 推荐(0)
摘要:原题链接 题意:给你n个二元组和起始条件,求其最大二维上升子序列,并输出选择编号。 思路:按照一个维度排序,然后DP即可,注意细节。 代码如下 int n, w, h; struct node{ int w, h, id; bool operator < (const node &t) const 阅读全文
posted @ 2021-04-03 12:21 beatlesss 阅读(73) 评论(0) 推荐(0)
摘要:原题链接 题目本身不难,但是细节很多 题意:给你一个井字棋盘,要求你判断其状态 思路:按照规则判断即可,难的是不合法状态考虑不全,先手和后手赢的时候,两个人棋盘上的棋子关系是固定的。 代码如下 char g[5][5]; bool flag = false; //判断是否合法 void judge( 阅读全文
posted @ 2021-04-03 01:48 beatlesss 阅读(66) 评论(0) 推荐(0)
摘要:原题链接 注意细节,不要越界,还有题目对英文不好的我,真是不友好,呜呜。 题意:给你两种类型的卡车,一种体积是1,另一种是2,每辆车都是自己的载重量,现在给你一个体积,问你这个体积下,最大的载重量是多少?并给出方案车辆编号。 思路:排序后预处理前缀和, $O(n)$枚举即可。 代码如下 struct 阅读全文
posted @ 2021-04-03 01:23 beatlesss 阅读(71) 评论(0) 推荐(0)
摘要:原题链接 这题有一个很玄乎的问题,求浮点数的gcd? eps设置精度高了反而错? 参考:博客 题意:给你三个点,问你这包含这三个点构成的所有角相等的多边形最小面积是多少? 思路:根据三角形三个顶点的坐标求得三角形的三边长$a、b、c$,由海伦公式和正弦定理得半径$R = abc / (4S)$,再求 阅读全文
posted @ 2021-04-03 00:46 beatlesss 阅读(118) 评论(0) 推荐(0)
摘要:原题链接 这题要特判矩阵里有0的情况,我就没特判,一直TLE(自己傻逼) 题意:给你一个矩阵,里面都是非负数,现在让你从$(1, 1)\(走到\)(n, n)$, 并且把路径上的所有数乘起来,问你能得到的数末尾最少有多少个0。 思路:把路径上的每个数含有因子2和5的个数求出来(因为2和5才能凑出0) 阅读全文
posted @ 2021-04-02 23:56 beatlesss 阅读(61) 评论(0) 推荐(0)
摘要:原题链接 这题我写的时候又wa了, 原因是我只维护了过程中的最大值,没有注意要先按照总成绩来看。 题意:按顺序给你一些人和它的得分,统计出每个选手的总成绩,然后找到得分最多的选手,考虑到可能存在多个选手得到最高分,那么就以最先得到最高分的选手为获胜者。 思路:就是先搞出总成绩,然后搞过程成绩,按顺序 阅读全文
posted @ 2021-04-02 13:44 beatlesss 阅读(54) 评论(0) 推荐(0)
摘要:原题链接 这题我写的时候各种bug层出不穷,这里记录一下大神的方法,太凝练了!不得不说,我的代码能力及其垃圾。 题意:给你一个字符串,要求你实现十进制和二十六进制的相互转换 思路:首先就是简单的预处理弄出输入信息,然后进行转换后输出即可,但是很容易出bug。 大佬代码 #include<cstdio 阅读全文
posted @ 2021-04-02 11:13 beatlesss 阅读(97) 评论(0) 推荐(0)
摘要:题目链接 这一场打的很差,B题卡了四十分钟,然后C题因为没有对负数取模,wa了,又白给掉分。 A题 题意:给你一个数n,让你找到一个数$ans >= n$,设ans的所有数位和为sum, 使得$gcd(ans, sum) > 1$ 思路:只要ans是3的倍数,就一定满足$gcd(ans, sum) 阅读全文
posted @ 2021-03-30 18:39 beatlesss 阅读(188) 评论(2) 推荐(0)