- 博客(64)
- 资源 (1)
- 收藏
- 关注
原创 自己总结一些C++常用的STL
几种常见的STL容器1、堆栈(stack) 先进先出(FIFO)头文件:#include < stack >定义方式: stack < int > s; //一个名为s的整形堆栈操作:s.push(x1); //将x1入栈s.pop(); //出栈,注意:本操作执行的内容是删除栈顶元素,并不对它进行访问s.top(); //访问栈顶s.empty...
2019-08-15 17:56:16 283
原创 AUTOSAR开源OS——Trampoline的编译与使用(二)
因此需要正确配置viper,viper在trampoline中已经给了,就在源代码的根目录下面,需要执行如下命令进行配置此时再执行相关任务就不会出现上述报错了。
2024-10-11 11:10:06 174
原创 牛客小白月赛39 部分题解
比赛传送门:https://ac.nowcoder.com/acm/contest/11216A题给你一堆向量和一个目标向量,问你这一堆向量中的某两个的和能不能得到和目标向量平行的向量。首先回顾一下向量的加法(x1 , y1) + (x2 , y2) == (x1 + x2 , y1 + y2)由于数据量较小,所以可以将所有的向量归一化,相当于都平移到原点,从原点开始。然后分别计算两两向量之和,判断是否和目标向量平行即可,即yy * ob.x == xx * ob.y 能用乘法就别用除法,会
2021-10-25 15:38:35 244
原创 java学习记录第一部分(基本语法-->接口)
Java学习java开发的一些事项1、每个源文件的基本组成部分是类class,java应用程序执行的入口是main方法,public static void main(String[] args){……}2、一个源文件中最多只能有一个pblic类,其他类的数量不限,且文件名必须和此public类名称一样。3、每一个类编译后,都会生成相应的.class文件。4、main方法也可以写在非public类中,这样在运行该非public类的时候,入口方法就是这个非public类的main方法。JDK、JR
2021-10-11 19:39:07 295
原创 最长回文子串(dp解法)
题目大意题目传送门:https://leetcode-cn.com/problems/longest-palindromic-substring/给你一个字符串,寻找其中最长回文子串并输出。DP解法首先对题目进行分析,这个最长的回文子串有什么特点?对于字符串str,假设dp[i,j]=1表示str[i…j]是回文子串,那个必定存在dp[i+1,j-1]=1。这样最长回文子串就能分解成一系列子问题,可以利用动态规划求解了。首先构造状态转移方程:则整个方程的初始状态应该是这样的:意思就是单个字符
2021-08-11 21:52:05 1534
原创 2021.07.22力扣刷题(二分/优先队列)
题目:4. 寻找两个正序数组的中位数题目传送门:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/思路看完题目之后,觉得很纳闷,为什么这样题目难度级别是困难???看了题解之后发现大意了,只想出了最最基础的。我的第一个思路就很暴力,直接使用优先队列合并数组,然后计算出中位数即可,直接上代码class Solution {public: double findMedianSortedArrays(vector<in
2021-07-22 21:53:04 171
原创 2021.07.21力扣刷题整理(滑动窗口)
题目:无重复字符的最长子串题目传送门题目大意:给你一个字符串,让你找出该字符串无重复字符的最长字串,注意是字串(需要连续),而不是子序列。思路一:暴力双重循环,直接上代码,注意长度为1的特殊情况。class Solution {public: int lengthOfLongestSubstring(string s) { set<char> ss; int num = 0; if(s.length()==1)
2021-07-21 21:20:08 187
转载 lower_bound( )和upper_bound( )的常见用法
ower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。在从小到大的排序数组中,lower_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于或等于num的数字,找到返回该数字的地址,不存在则返回end。通过返回的地址减去起始地址begin,得到找到数字在数组中的下标。upper_bound( begin,end,num):从数组的begin位置到end-1位置二分查找第一个大于num的数字,找到返
2021-04-14 18:27:11 179
原创 结构体对齐和空结构体大小
结构体对齐许多实际的计算机系统对基本类型数据在内存中存放的位置有限制,它们会要求这些数据的起始地址的值是某个数k的倍数,这就是所谓的内存对齐,而这个k则被称为该数据类型的对齐模数(alignment modulus)。这种强制的要求一来简化了处理器与内存之间传输系统的设计,二来可以提升读取数据的速度。总的来说就是方便寻址,要不然内存中的地址长短不一,寻址的时间复杂度将会增大。几个具体例子#include<bits/stdc++.h>#define ll long longusing
2021-04-13 20:18:19 114
原创 CodeCraft-21 and Codeforces Round #711 (Div. 2) B. Box Fitting(贪心、优先队列的用法)
题目传送门:https://codeforces.com/contest/1498/problem/B题目大意:给你一堆高度为1,长为2的幂的方块,再给你一个长度固定为w的盒子。问这个盒子的高度至少为多少才能把上面所有的方块都放进去?注意:你不能旋转方块!也就是说必须水平放置。解题思路:我们不用考虑方块的高度,因为都是1,只需要考虑长度能不能放下就行。首先把所有方块按照从大到小进行排序,然后开一个优先队列(默认从大到小排序),先将长度为w的空盒子放进去。然后从最大的开始比较,如果队首的值小于当前这个
2021-03-30 09:23:48 544
原创 蓝桥杯试题 基础练习 分解质因数(内含快速判断素数)
题目大意求出区间[a,b]中所有整数的质因数分解。思路先筛出所有的素数,再进行分解。AC代码#include<bits/stdc++.h>#define ll long longusing namespace std;bool isprime(int n)//快速判断素数模板{ if(n==2||n==3) { return true; } if(n%6!=1&&n%6!=5) { return false; } int temp = (i
2021-03-24 09:20:07 172
原创 Codeforces Educational Codeforces Round 106 (Rated for Div. 2) A—C题解
比赛传送门:https://codeforces.com/contest/1499标题
2021-03-20 15:05:04 394 1
原创 洛谷P1551 亲戚 (并查集板子)
传送门:https://www.luogu.com.cn/problem/P1551AC代码(并查集板子)#include<bits/stdc++.h>#define ll long long#define maxn 5005 /*#include <iomanip>cout<<setiosflags(ios::fixed)<<setprecision(n);//保留n位小数输出 */ using namespace std;int pr
2021-03-16 17:15:25 261
原创 ACM算法——搜索篇(1)
写在前面人有的时候总是得面对选择断断续续接触ACM也有差不多两年的时间了,但是还没有系统学习过什么算法,趁着现在还有些时间,把基础的算法弄清楚吧。先从使用较为广泛的搜索算法开始吧!DFS(深度优先搜索)这里讲的dfs是最最最最最基础的dfs,不接触剪枝和回溯。所谓dfs,就是沿着一个点一直搜索其所有的可能性,搜到头之后再回溯到上一个状态继续搜索别的可能性。本来想画个图说的清楚一点的,但是估计也没人看,所以就省略了,是一个二叉树遍历的图。这里最重要的就是回溯也就是return的条件,这是整个dfs
2021-03-10 18:51:04 315
原创 P1923 【深基9.例4】求第 k 小的数——快速排序、二分
题目传送门:https://www.luogu.com.cn/problem/P1923题目概述本题的要求是在很多数中找出第k小的数,由于本题的数很多,所以不能直接用sort排序(会超时)。思路分析既然不能用sort(时间复杂度是nlogn),那么就要想办法将时间复杂度降到O(n)。首先想到的方法肯定是二分,也就是快速排序。这里我们先回顾一下快速排序的过程,首先是选择一个mid下标值,然后以这个mid值为基准,将所有的数分成小于mid和大于mid的两堆,然后整一堆数就分成了两部分。然后比较一下当前的
2021-03-01 22:09:34 598
原创 天梯赛 L1-039 古风排版 (20分)
题目传送门:https://pintia.cn/problem-sets/994805046380707840/problems/994805091888906240题目描述思路用一个二维数组,将所给的字符串按照规定排序,按照要求输出即可。需要注意的是,本题的行数是固定的,列数是变化的。如果长度不是正好满足行数的话,要补上相应的空格。AC代码#include<bits/stdc++.h>#define ll long long using namespace std;int
2020-11-23 15:58:47 350
原创 天梯赛练习题 L1-006 连续因子 (20分)(暴力)
题目传送门:https://pintia.cn/problem-sets/994805046380707840/problems/994805138600869888题目描述思路根据题意得,13!(13的阶乘)大于2^31。因此该数最多是连续12个因子相乘,也就是12!(12的阶乘)。由于位数较短,可以采用暴力的方法进行求解。具体思路如下:1、由于要找最长连续序列。我们要从len=12开始往下遍历,这样找到的第一个满足要求的序列一定是最长的,此时直接break即可,无需消耗更多的时间。2、对于
2020-11-22 11:44:02 599
原创 牛客算法周周练15——A、B
题目传送门:https://ac.nowcoder.com/acm/contest/6290A.数列下标(签到)题目大意:解题思路:纯模拟,从这个数开始向后遍历,找到第一个比它大的数,记录下标。给数组b初始化为0的话如果找不到比它更大的数直接就是0,不用额外处理。AC代码:#include<bits/stdc++.h>#define ll long longusing namespace std;int main(){ ll n=0; ll a[10005]={0},
2020-07-18 22:31:11 427
原创 Codeforces Round #636 (Div. 3)——A到C题解
竞赛传送门/;https://codeforces.com/contest/1343A. Candies(思维)题目大意:有一个等比数列,x,2x,4x……,它们的前n项和为Sn,现在给你Sn的值,让你求出x的值。解题思路:首先知道等比数列的求和公式由此可以将a1的表达式写出来,因为这里的公比是2,所以就是让n从2开始迭代(从1的话分母是1,跟谁相除都是个整数),直到上面这个表达...
2020-04-23 09:18:11 245
原创 “科大讯飞杯”第18届上海大学程序设计联赛春季赛暨高校网络友谊赛前六题题解
竞赛传送门:https://ac.nowcoder.com/acm/contest/5278A.组队比赛(签到题)题目大意:给你四个数字,两两组合,问怎么样组合能使得两组的绝对值的差最小。解题思路:排序一下,中间的两个为一组,最大和最小的为另一组。AC代码:#include <bits/stdc++.h>#define PI 3.14159265358979323846...
2020-04-19 11:52:26 435
原创 牛客算法周周练1——A. Maximize The Beautiful Value(思维+前缀和)
题目大意:题目传送门:https://ac.nowcoder.com/acm/contest/5086/A给你一个非递减的数字序列和要移动的步数k,每个数字所在的位置对应它的权值(第一个数字的权值是1,第二个数字的权值是2……),注意这个权值只跟数字的位置有关,而跟数字本身无关。只能移动一个数字,向前移动k步,问怎么样移动能使得整个数字序列的加权和最大?这个最大值是多少?题目分析:题解思路...
2020-04-09 21:25:04 187
原创 牛客算法周周练1——E.幸运数字(思维+树状数组)
题目描述:题目传送门:https://ac.nowcoder.com/acm/contest/5086/E样例说明:x=2,3,4时next(x)=4;x=5,6,7时next(x)=7,和位4+4+4+7+7+7=33.题目分析:因为幸运数字只由两个数字构成,如果直接暴力的话由于数据范围比较大,会超时。所以通过一些简单的推导不难看出,这个数字如果有n位的话,n位的幸运数字共有2^n种结...
2020-04-09 21:13:34 1441
原创 求多个数的最小公倍数
#include <bits/stdc++.h>#define PI 3.14159265358979323846 using namespace std;typedef long long ll;int main(){ static int a[100000]={0}; int j=1,t=0; while(scanf("%d",&a[j])!=EOF) {...
2020-02-26 22:50:26 434
原创 2020牛客寒假算法基础集训营6——ADFGJ简要题解
竞赛传送门:https://ac.nowcoder.com/acm/contest/3007A.配对(贪心+思维)题目分析及AC代码:题解:作者:珩月链接:https://ac.nowcoder.com/discuss/367149?type=101&order=0&pos=9&page=2来源:牛客网我们要使得第K大的和尽可能大,显然可以贪心:首先,组成...
2020-02-16 20:54:56 358
原创 2020牛客寒假算法基础集训营5——部分题解及AC代码(F——J、无G)
F.碎碎念(dp+前缀和)题目分析及AC代码:本题采用dp的思路去解题,分析都写在代码的注释里了,话不多说,直接上代码。#include <bits/stdc++.h>using namespace std;const int maxn=1e5+5;const int Mod=1e9+7;int dp[maxn];int main() { int x,q,l...
2020-02-16 10:12:04 716
原创 2020牛客寒假算法基础集训营5——部分题解及AC代码(A——E、无C)
竞赛传送门:https://ac.nowcoder.com/acm/contest/3006A.模板(字符串、水题)题目分析及AC代码:就是一个字符串比较,看看两个字符串中有多少个不同的字符。我所采用的办法是将短的那个字符串后面补上‘+’符号,然后比较两个字符串的不同字符的数量即可。但是用string谜之运行错误,故用char数组代替string。#include<bits/std...
2020-02-14 23:51:57 248
原创 2020牛客寒假算法基础集训营4(A—D)简要题解及AC代码
竞赛传送门:https://ac.nowcoder.com/acm/contest/3005A.欧几里得(规律)题目分析及AC代码:打表找规律,可以发现结果是一个斐波那契数列:1,3,5,8,13,21……输出对应的结果即可。#include<bits/stdc++.h>#define ll long longusing namespace std;int main(...
2020-02-12 22:12:26 196
原创 2020牛客寒假算法基础集训营2(部分题解及代码)
A.做游戏(签到+贪心)AC代码:#include<iostream>#include<algorithm>#include<cmath>#include<cstring>#include<set>#include<string> #include<vector>#include<stac...
2020-02-07 22:56:16 241
原创 Codeforces Round #616 (Div. 2)——A、B、C简要题解
题目传送门:https://codeforces.com/contest/1291/A. Even But Not Even(思维+前缀和)题目大意:给你一串数字,问你能不能通过去掉几个数字(也可以一个都不去)来将这个数变成一个所有数字之和是偶数且这个数本身是个奇数的。比如123就是这样的数字。如果可以的话输出这个数字,如果不能的话输出-1,同一串数字可能有多个结果,输出任意一个均可。题...
2020-02-03 22:32:38 215
原创 Codeforces Round #608 (Div. 2)——A、B、C题解
题目传送门:https://codeforces.com/contest/1271/A. Suits(贪心)题目大意:第一个套餐是一条领带+一条夹克能赚e元,第二个套餐是一个背心+一个围巾+一件夹克能赚f元。现在给你a条领带,b条围巾,c件背心,d件夹克,问最多能赚多少钱。题目分析:本题采用贪心的策略,哪个赚的多先紧着哪个套餐生产,如果有剩余的材料,再尽力去生产另一个套餐。由题意可知,套...
2020-02-03 13:20:40 237
原创 Codeforces Global Round 6——A、B、C题题解
A. Competitive Programmer(思维)题目大意:给你一堆数字,让你判断这一堆数字的排列组合中有没有能整除60的数,如果有,输出red,否则输出cyan。题目分析:能被60整除的数有以下几个特点:1、一定有0。2、除掉一个0之外,剩下数字的排列组合能被6整除,而能被6整除的数也有以下两个特点:一定是偶数、这个偶数能被3整除(各个数字之和是3的倍数)。要注意这两种特殊...
2020-02-01 18:15:51 241
原创 Educational Codeforces Round 78 (Rated for Div. 2)——A、B题简要题解
题目传送门:https://codeforces.com/contest/1278/problem/A题目传送门:https://codeforces.com/contest/1278/problem/BA. Shuffle Hashing(思维+暴力)题目大意:给你两个字符串,看第二个字符串中是否包含第一个字符串或者其相似串,相似串的定义是:两个字符串仅仅是字符的顺序不相同,其余均相同。...
2020-01-29 21:38:58 216
原创 Codeforces Round #614 (Div. 2)——A、B、C题题解
题目传送门:https://codeforces.com/contest/1293A. ConneR and the A.R.C. Markland-N(思维+STL)题目大意:一栋楼有n层,每一层有个饭店,有一个现在在第s层,有k个层数的饭店关门了,问现在他要去最近的饭店吃饭最少要爬(或者下)几层楼。解题思路:因为n的值很大(1e9),所以不要想试图开一个数组去存,于是就想到了用STL...
2020-01-23 22:42:04 265
原创 Educational Codeforces Round 80 (Rated for Div. 2)——A、B题题解
题目传送门:https://codeforces.com/contest/1288/problem/A题目传送门:https://codeforces.com/contest/1288/problem/BA. Deadline(思维)题目大意:有一台机器,原来需要运行d天能完成一件工作,如果你用x天去优化这个机器,则这台机器只需要ceil(d/(x+1))天就能完成这件工作,但是你不能边优...
2020-01-16 22:16:41 153
原创 Codeforces Round #613 (Div. 2)——C. Fadi and LCM
题目大意:题目传送门:https://codeforces.com/contest/1285/problem/C给你一个数字n,这个数字是某两个数字(假设为a,b)的最小公倍数,求所有可能的max(a,b)的最小值。并输出此时的a,b例如:1 6 和 2 3 的最小公倍数都是6,而max(1,6)=6>max(2,3)=3所以我们要输出2 3.题目分析:最小公倍数满足...
2020-01-12 21:25:34 135
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人