随笔分类 -  基础算法

摘要:读懂题意非常重要 Polynomials:多项式 exponents and coefficients:指数和系数 题意:给你每个x的指数和当前x的指数的系数,求两个多项式相加。 题意了解明白是不是so easy 然而还有坑点:1.保留一位小数,2.相加为0的不输出,3.所有式子都为0,只输出0. 阅读全文
posted @ 2021-02-15 20:14 杰瑞与汤姆 阅读(71) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/7079/A 题目描述 牛牛现在有一个长度为 nnn 的序列 a1,a2,…,ana_1,a_2,\ldots,a_na1​,a2​,…,an​。现在牛牛有 qqq 次询问,每次想询问区间 [l,r][l,r][l,r] 阅读全文
posted @ 2020-09-09 19:40 杰瑞与汤姆 阅读(241) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5668/B 题意:输入一个字符串,M操作表示把前面t个字符移到后面,如果t<0,那就是把后面t个字符移到前面,A操作 就是问你第t个字符是什么输出。 题解:把字符串看做一个环,收尾相接,无论进行多少次操作字符串的顺序 阅读全文
posted @ 2020-08-05 16:54 杰瑞与汤姆 阅读(153) 评论(0) 推荐(0)
摘要:题意:输入一个n长字符串表示n天的池塘,0表示该天没有任何东西,1表示有蛤蜊(制作鱼饵的材料),2表示有鱼,3表示有鱼又有蛤蜊。每天我们有4种操作可以选择,1.池塘有鱼我们可以直接捕鱼不消耗鱼饵,2.池塘有蛤蜊我们可以捉蛤蜊,3.有蛤蜊的前提的下可以制作鱼饵,4.不做任何操作。 输出做多可以捕捉多少 阅读全文
posted @ 2020-08-05 16:14 杰瑞与汤姆 阅读(205) 评论(0) 推荐(0)
摘要:题意:输入字符串,判断前面6个字符串是否是"lovely" #include <bits/stdc++.h> #define inf 0x3f3f3f3f using namespace std; const int maxn = 1e5 + 7; typedef long long ll; int 阅读全文
posted @ 2020-08-05 16:06 杰瑞与汤姆 阅读(125) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5670/F 题意:输入n个数,按照公式打印图,注意公式中的除不是整除的话打印的要+1 爆int #include <bits/stdc++.h> using namespace std; typedef long l 阅读全文
posted @ 2020-08-04 21:27 杰瑞与汤姆 阅读(152) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5673/K 题意:输入n个菜品的利润,再输入n个菜品的数量,一个旅客至少要有一个菜品,或者是[1,x]个菜都要,求最大可以接待多少旅客,在这个基础上求最大利润,换句话说,就是求最大旅客数量的最大利润。 题解:首先要求 阅读全文
posted @ 2020-08-03 23:14 杰瑞与汤姆 阅读(190) 评论(0) 推荐(0)
摘要:题意:输入n种牌以及牌的属性,任意选3张,这3张满足4种属性,要么全相同,要么全不同,“*”是万能牌,可以变成你想要的任意的牌,输出3张拍的序号。 题解:写一个read函数把[]跳过去读到字符串,再用map把属性映射成0,1,2,3。因为n<256,暴力O(n3),枚举,判断是否符合条件即可。 感觉 阅读全文
posted @ 2020-08-03 22:05 杰瑞与汤姆 阅读(167) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/5671/K 题意:定义一个概念kbag:1-k的排列。3bag表示为{1,2,3,2,1,3,3,2,1}长度不限,输入n,k,n长的序列,判断是不是part-kbag。 题解: 当ai<1或ai>k,不为partK−bag 阅读全文
posted @ 2020-08-02 16:14 杰瑞与汤姆 阅读(258) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5671/C 题意:输入一个n*m的矩阵,找一个值最大的 (子矩阵的和/子矩阵最后一行的和),输出 题解:比赛时联想到以前写过的最大子矩阵和,就是用dp来写, 一维数组a[i]的最大子段和我们可以用dp[i]=max( 阅读全文
posted @ 2020-08-02 15:38 杰瑞与汤姆 阅读(187) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/5671/E 题意:输入两个数n,k。构造一种新序列P[1-n] 满足每一种长度存在子串的和对n取余为k。输出序列P,若有多种随便输出一种即可,若不能构造,输入-1。 题解:通过举例我们可以很快发现其实很多n,k是不能满足 阅读全文
posted @ 2020-08-02 15:19 杰瑞与汤姆 阅读(219) 评论(0) 推荐(0)
摘要:链接:https://ac.nowcoder.com/acm/contest/5672/B 题意:给你t个测试样例,每个样例给你n*m个口罩,你要分给n个医院或者m个医院,每个医院分到的口罩数量一样,找出怎么样分使得分的个数最少 题解:构造算法 我们保证(n<m)每次都放n个n。就可以满足条件。 # 阅读全文
posted @ 2020-08-02 13:57 杰瑞与汤姆 阅读(203) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5667/C 题意:给你一个无根树,任意选两点进行覆盖,要求所有点边都被覆盖,求最少选多少对,也要输出是怎么样的对 题解:我们很容易想到是用叶子节点去覆盖,所以我们用dfs将一颗无根树转化为有根的,而且根的节点的度最好 阅读全文
posted @ 2020-08-01 20:25 杰瑞与汤姆 阅读(213) 评论(0) 推荐(0)
摘要:题目链接 https://ac.nowcoder.com/acm/contest/5667/B 题意:给你n个二维坐标,设计一个圆过(0,0),输出 圆经过的坐标数量最多多少个 题解1:枚举2个点和(0,0) 三点求三角形的外心即过三点的圆心。重复次数最多的即为答案的圆心 输出的答案是根据在圆上的点 阅读全文
posted @ 2020-08-01 11:25 杰瑞与汤姆 阅读(223) 评论(0) 推荐(0)
摘要:题意:给你n*m的最小公倍数矩阵,求每个k*k方阵里的的最大元素值的和 题解:单调队列维护区间最值,先从左到右,记录最大值到b数组 再从上到下,记录最大值,ans+=最大值 最小公倍数矩阵暴力枚举O(n*m*logn) ,优化方法为O(nm),但是空间会多一倍,会被卡空间... #define IO 阅读全文
posted @ 2020-08-01 10:15 杰瑞与汤姆 阅读(204) 评论(0) 推荐(0)
摘要:题意:给你两个用24时间表示的时间,输出相差多少秒,坑点23:59:59到0:0:0是86399秒 #include<iostream> #include <cstdio> #include <cstring> using namespace std; const int maxn=1e5+7; i 阅读全文
posted @ 2020-08-01 09:25 杰瑞与汤姆 阅读(139) 评论(0) 推荐(0)
摘要:题意:第一场签到题,给你两个字符串可以无限重复,比较两个大小 题解:直接比较a+b与b+a,具体可以举例思考一下 #include <bits/stdc++.h> using namespace std; int main(){ string a,b; string c,d; while(cin>> 阅读全文
posted @ 2020-07-31 23:33 杰瑞与汤姆 阅读(182) 评论(0) 推荐(0)