
C++
小玄.
这个作者很懒,什么都没留下…
展开
-
高精度加法
出自南昌理工ACM集训队解法:因为给出的数字(目前暂定为2组数字)超过了longlong的范围,故需要用字符数组存储,再转换为整型,将其存储到整型数组当中进行加法计算后输出1.创造数组存储()const int Maxn = 5e2 + 4;//5*10的二次方+4,+4是防止进位//数组中下标必须是常量,故在前面加const,若不加则为变量char s1[Maxn];char s2[Maxn];int a[Maxn];int b[Maxn];int ab[Maxn];2.输入样原创 2020-09-24 23:22:47 · 166 阅读 · 0 评论 -
刷题时输出格式末尾不要有空格
有时候在一些oj上做题输出格式很严格,会有要求说末尾不要有空格。那我们可以先输出第一个数,再用循环输出空格+后面的数cout<<a[0];for(int i=1;i<n;i++).//a[0]先输出了,故循环从1开始{ cout<<" "<<a[i];}这样就不会末尾有空格啦!...原创 2020-08-24 09:42:06 · 1441 阅读 · 1 评论 -
C++STL之nth_element函数浅入
出自–南昌理工学院ACM集训队模板函数头文件: 函数名: std::nth_element目前已知用法:可以查找一个数组中的第k小的数,k的左边都是小于等于k的数,k的右边都是大于等于k的数.nth_element(a,a+k,a+n)a代表数组名,a+k代表查找数组中第k小的数,a+n等于查找长度为n介绍完了那就开始解个题目:洛谷 p1923:求第k小的数这道题如果用快排来解的话会有两个TLE,可以用nth_element函数来解代码如下:#include<iostream&原创 2020-08-22 17:59:15 · 393 阅读 · 0 评论 -
类中的构造函数的初始化使用,以及私有成员的赋值
利用函数访问私有成员两种方法:1.用类定义变量时将变量中的变量初始化class cy{ int a;public: cy()//在用cy类定义变量的时,若要对变量进行无参初始化,则调用该构造函数 { a = 1; } cy(int a_)//在用cy类定义变量的时,若要对变量进行有参初始化,则调用该构造函数 { a = a_; } void ass()//利用函数访问私有成员 { cout << a<<endl; }};int main原创 2020-08-21 15:28:50 · 3667 阅读 · 0 评论 -
C++类的使用:私有成员的赋值以及类与类之间的赋值(待补充)
关于类的定义回头补充,现在先直接上代码**#include<iostream>#include<string>#include<stdio.h>#include<math.h>#include<Windows.h>//#include<algorithm>#include<algorithm>#include<cstdlib>using namespace std;#pragma warnin原创 2020-08-21 15:10:10 · 4070 阅读 · 0 评论 -
带有初始化器的if和switch语句
使用带有初始化器的块的语句,项目要支持c++17标准,不然会报错!!不带初始化器的if语句:int foo(int a){ return a;}int main(){ auto x=foo(42); if(x>42) { //随便写点什么 } else { //随便写点什么 } return 0}初始化器的使用方法:若作用域是在if中,则写在if的括号里,判断条件的前面,具体看下图:带有初始化器的if语句int foo(int a){ ret原创 2020-08-20 10:43:21 · 371 阅读 · 0 评论 -
(小技巧)当局部变量名与全局变量名相同时,如何使用全局变量名
Unary Scope Resolution (一元作用域解析运算符)(局部变量名与全局变量名相同时,可使用 :: 访问全局变量)``(:: 这个运算符被称为一元作用域解析运算符)例子#include <iostream>int v1 = 10;int main() { int v1 = 5; std::cout << "local variable v1 is " << v1 << std::endl; s原创 2020-08-19 09:05:34 · 1709 阅读 · 0 评论 -
素(质)数筛
——南昌理工学院ACM集训队//求x(设为100)以内的质数先复习下素数的定义:“素数就是质数,素数有无限个。一个大于1的自然数,且除了1和它本身外,不能被其他自然数整除的数叫素数。换句话说就是,除了1和该数本身以外不再有其他的因数的数被称为素数。”做法:首先需要创建一个数组,元素个数为100,并将其初始化为0int a[100+10];//+10是防止后面操作导致数组溢出(虽然几乎不可能出现这种情况,但是加上总是的好的)//根据素数的定义,定义一个变量,从2开始筛选,如果是i的倍数就置为1原创 2020-08-15 17:59:30 · 251 阅读 · 0 评论 -
处理string对象中的基本操作
Cctype头文件中的函数使用以下函数需要添加头文件isalnum© 当c是字母或数字时为真isalpha© 当c是字母时为真iscntrl© 当c 是控制字符时为真isdigit© 当c是数字时为真isgraph© 当c不是空格但可打印时为真islower© 当c是小写字时为真isprint© 当c是可打印字符时为真(即c是空格或c具有可是形式)ispunct© 当c是标点符号时为真(即c不是控制字符、数字、字母、可打印空白中的一种)iss原创 2020-08-08 16:45:53 · 183 阅读 · 0 评论 -
动态数组vector(容器)(萌新向)
向量存储(vector)是一种顺序容器,是一块连续分配的内存,支持随机访问,和数组相似,但是有很大区别:数组是静态分配空间,大小一旦确认便不能更改,而vector则是动态分配内存,会随着元素不断的插入,不断的增大。使用vector需添加头文件#include//vs2019中需要添加 using name space std; 才能使用,不然使用不了 不知道我是不是个例vector类成员函数(待补充)vectora; //创建一个装着int类型的容器aa.push_push(); //在原创 2020-07-28 16:37:39 · 366 阅读 · 0 评论 -
队列Queue及其函数的使用方法(萌新向)
C++队列是queue模板类的定义在头文件中,queue模板类需要两个模板参数,一个是元素类型,一个是容器类型,元素类型是必要的,容器类型是可选的,默认为deque类型C++队列Queue是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构使用queue需添加头文件#include应用到以上所有函数的代码如下:#include<iostream>#include<queue>using namespace std;int main(){ queue&原创 2020-07-28 16:05:17 · 3469 阅读 · 0 评论 -
插入排序
#include <iomanip> #include<iostream>#include<cmath>#include<algorithm>#include<cstring># include <math.h>#include<string>#include<cstdio>using namespace std;;//有一组数组a[6]={3,7,5,9,2,8},对其进行插入排序int.原创 2020-07-28 08:40:45 · 108 阅读 · 0 评论 -
选择排序
代码int a[200000];int main(){ for (int i = 0; i < 5; i++) { cin >> a[i]; } for (int i = 0; i < 5 - 1; i++)//从0到n-2个数开始查询(最后一个不用) { int min = i; for (int j = i + 1; j < 5; j++)//记录n-1个元素中,最小那个元素的下标; { if (a[j] < a[min])原创 2020-07-28 08:39:58 · 83 阅读 · 0 评论 -
第一周ACM训练总结(偏日记向)
第一周的话没上课,只是在机房敲代码刷题,但是就算是这样氛围给我的感觉也很不一样。因为寝室的室友和周围认识的同学基本上的时间都是在玩游戏,很少去写代码去学习,当我处在这种氛围之中时我也感受到了紧迫感,我并不想成为最弱的那一个。因为半年寒假都在玩,荒废学业,所以基础也比较差,所以决定从洛谷的入门题单开始刷起,刷的同时补充算法以及不懂的知识点,也想着早日可以追上来刷基础题其实还好,目前刷到字符串题组了,里面遇见一题令我很是难受。题目是洛谷里的:P1308,s字符串是 给定单词s1字符串是 给原创 2020-07-27 14:02:41 · 209 阅读 · 0 评论 -
(新手向)关于栈的函数以及小实例
stack模板类的定义在头文件中stack模板类需要两个模板参数,一个是元素个数,一个是容器类型,但只有元素类型是必要的,在不指定容器类型时,默认的类型为deque定义stack对象的示例代码如下:stacks1; //定义一个名为s1的int类型的栈stacks2;//定义一个名为s2的string类型的栈stack栈的基本操作有:入栈,s.push(x) //s为栈名出栈, s.pop();出栈只是删除栈顶元素,并不返回该元素访问栈顶 s.top()判断栈空 s.em原创 2020-07-08 23:21:31 · 1468 阅读 · 0 评论