![](https://img-blog.csdnimg.cn/20190927151043371.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
c++入门1
初识
cout;int, long, long long, double, short, bool, float;
cin,for, while, if, switch, struct;
a[], a[][];
{∞}
自然选择,前进四!
展开
-
Acwing第77场周赛
简单的题,暴力一点可以直接用map,但是其中只有2个队,所以可以不用遍历:map.begin()->second的值就是第一个队的分数–map.end()->second的值就是第二个队的分数–map.end()也就是map.rbegin()所以–map.end()->second就可以写成map.rbegin()->second如果>原创 2022-11-17 17:43:52 · 378 阅读 · 0 评论 -
2021瑶海区题解
每轮游戏消耗n份零食,k轮游戏消耗n*k份零食,最后剩下的零食就是m-n*k份零食。原创 2022-11-11 21:36:22 · 472 阅读 · 0 评论 -
【技巧】重载运算符
结构体排序有两种常用的方法,因为结构体是自定义类型,编译器不知道你是按照什么方式排序。原创 2022-11-08 14:42:31 · 210 阅读 · 0 评论 -
小妙招——多关键字排序
在有多个条件的情况下排序,我们一般用结构体cmp来排序。这个时候你就需要想一想,会不会有些题就卡你的这个排序的时间呢?所以我们需要想一想怎么来优化我们的代码。现在想一想,怎么来优化。我举个例子:有n个数(n <= 800000000),输出他们中最大的。我们可以以这个为参考来思考:首先我们以第一个数为基准来思考,如果当前输入的数比第一个大,那就更新最大值。按着这个思路,就是先把第一个输入的作为最优解,如果当前的比前面的更优,那么就更新最优解。我出一道题:问题描述庆庆正在研究一个科技创新课原创 2022-03-25 18:33:19 · 1337 阅读 · 0 评论 -
校门外的树 [plus+]
题目描述问题描述某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……,L,都种有一棵树。由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。输入格式第一行有两个整数L、M,原创 2022-03-20 14:10:19 · 102 阅读 · 0 评论 -
基础贪心总结
/* 基础贪心 - - 核心部分 *//*bool cmp ( const Wvs &x, const Wvs &y ){return x.v>y.v ;}for( int i = 1 ;i <= n; i++ ){cin >> wvs[i].w >> wvs[i].v ;wvs[i].v /= wvs[i].w;}sort原创 2021-12-13 13:33:11 · 518 阅读 · 0 评论 -
c++入门2开启啦
c++入门1已经上完啦!接下来是c++入门2的时间了,我们不见不散!!原创 2021-10-12 12:54:32 · 60 阅读 · 0 评论 -
10【c++入门】语句对比(下)‘string’和‘char‘
1.charchar是字符形定义可存放’A‘,’H‘等放不了汉字也只能输入一个字符char a;cin>>a;cout<<a;这段代码如果我输入iiiii输出:i2.stringstring可存放字符串string能输入成汉字而且不会像char一样截断后面的字符...原创 2021-07-29 23:06:51 · 72 阅读 · 1 评论 -
11【c++入门】子程序
函数就是子程序,可反复利用,不用像原来那样总是写。结构: 定义类型 函数名(){ 语句 return 返回值; } 要在main前定义哦!~~运用: 函数名(变量名);...原创 2021-07-28 10:31:44 · 1397 阅读 · 0 评论 -
10【c++入门】语句对比(上) “while“与“do while”
一、while: 进入while运行 |表达式 | | | |循环体while是如果表达式成立,...原创 2021-08-02 11:21:21 · 179 阅读 · 1 评论 -
9【c++入门】system函数详解
先加入#include<windows.h>一、system1.system("cls");用来清屏如:#include<iostream>#include<cstdio>#include<cmath>#include<algorithm>#include<bits/stdc++.h>#include<string>#include<math.h>#include<wi原创 2021-08-01 19:08:50 · 5470 阅读 · 1 评论 -
3【c++入门】cin.get用法+注释
1.cin.get遇到空格能保留后面部分cin.get用来输入字符串结构如下:cin.get(数组名,数组长度);但是在有空格隔断下也能输出样例运行:如果输入www eee 000输出的是:www eee 000运行的代码如下:#include<iostream>using namespace std;char a[110];//定义数组及数组长度【长度自己定】 int main(){ cin.get(a,110);//输入数组a【写的时候要原创 2021-08-07 10:47:28 · 326 阅读 · 2 评论 -
8【c++入门】判断工具(上)if-else
1.if语句在题目中,会有些判断之类的题目,比如判断是不是某个数的倍数之类这时,就可以用if判断结构:if(判断的条件(表达式)){ 执行的命令;}小贴士: if中如果的条件如果满足,则运行执行的命令,如:cout之类的命令做一道题试试吧 good数【1】题目小明做喜欢的数是5,能被5整除的数就是小明的good数。小明想要从n...原创 2021-08-16 16:15:13 · 158 阅读 · 0 评论 -
4【c++入门】 string用法精讲详解
大家好,我们又见面了大家都知道,char用来存放一个字符但是不能输入多个字符,今天,我们用string来解决要用string首先要写一个头文件#include<string>//这是string的头文件哦~~~string来定义一个字符串时,可以是任何长度哦~~后面要for输出一般for是用不了,我们要在次数后加个.size()就行了string可以是字符串,也可以是汉字、词语输入方法1:#include<iostream>#includ原创 2021-08-14 20:56:01 · 242 阅读 · 0 评论 -
5【c++入门】 string小工具【earase】
大家好,想必大家都认识,哦不,是肯定认识。这是橡皮擦对吧???在string的字符串中,有时需要删除某个地方的字符,就可以用到它在使用时,再要进行修改的字符串后加上 .earase(要删的东西的位置,如:最后一个);这里定义一个字符串sstring s[510];//长度为510个字符接着用while输入int t=1;while(cin>>s[t]){ t++;}OK!呃这是一个删除结尾字符的语句s[t-1].erase(s[t-...原创 2021-08-15 22:14:04 · 272 阅读 · 0 评论 -
8【c++入门】判断工具(下)switch
哈罗,又见面了,我们继续学习第8课。首先来讲一下格式switch(要判断的东西){ case 是否某某某:执行的命令;break;}//case可以写很多哦~~case是来判断要判断的东西进行判断的一个单词(语句)小贴士:在case里可以套if、case这种判断语句哦~~~来看一下一道题吧这个月有多少天?题目如果给定年份和月份,你能计算出这个月有多少天吗?...原创 2021-08-16 16:34:58 · 96 阅读 · 0 评论 -
【c++入门】背诵课--常用模板
大纲1.反转数字2.最大公约数3.最小公倍数4.素数判断这是c++初学者经常要用的一些算术模板代码:#include <iostream>using namespace std;int main(){ int n,x=0; cin>>n; while(n){ x=x*10+n%10; n/=10; } cout<<x; return 0;}2.最大公约数#include <iostre...原创 2021-08-16 21:31:10 · 162 阅读 · 2 评论 -
1【c++入门】桶排序精讲1--计数
1.归类类型2.统计类型3.总结1. 归类类型1.归类(插旗子类型) 归类是将输入的每一个数,加入相应的cnt里进行计数首先定义一个存放计数的cnt数组int cnt[数组长度];//数组长度自己定接下来我们定义一个数字个数,和一个变量来接收每一个输入的数int n,x;接下来读取个数cin>>n;知道了个数,我们可以开始输入每一个数字了for(int i=1;i<=n;i++){ cin>>x;//读取数字 cnt[x]++;//对.原创 2021-08-10 21:41:36 · 1307 阅读 · 3 评论 -
2【c++入门】桶排序精讲2--排序
大家好,又见面了1.回顾2.排序讲解3.代码1.回顾我们简单回顾一下上次的内容1.归类(插旗子类型) 归类是将输入的每一个数,加入相应的cnt里进行计数首先定义一个存放计数的cnt数组int cnt[数组长度];//数组长度自己定接下来我们定义一个数字个数,和一个变量来接收每一个输入的数int n,x;接下来读取个数cin>>n;知道了个数,我们可以开始输入每一个数字了for(int i=1;i<=n;i++){ cin>>x;原创 2021-08-11 22:06:15 · 156 阅读 · 5 评论 -
6【c++入门】小数向上取整向下取整及四舍五入
大家好,我们继续回到c++中 向上取整 向下取整 四舍五入 floor 向下取整 ceil 向上取整 round 四舍五入 可用这些来对小数进行操作#include<iostream>#include<cstdio>#include<cmath>#include<algorithm>#include<bits/stdc++.h>#include<string>#incl...原创 2021-08-15 22:57:23 · 1020 阅读 · 0 评论 -
18【c++入门】字符数组小工具 strlen
大纲1.用处【杂聊闲谈】2.格式3.案例1.用处strlen是一个获取字符数组(char类型)的工具输入方法就是cin.getline格式:cin.getline(数组名,定义的数组长度);这样就可以输入字符数组了!!!这个也不用讲了吧详情见 3【c++入门】cin.get用法+注释2.格式strlen格式(easy(简单)):int 一个自定义的变量存放长度=strlen(数组名);这样就可以知道这个数组输入进去的长度了在遍历每一...原创 2021-08-25 16:11:04 · 530 阅读 · 1 评论 -
12【c++入门】冒泡排序算法
冒泡排序大纲1.概念2.代码3.总结分析1.概念冒泡排序,是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。 >>>>>>代码2.代码弄懂了概念,我们开始编吧!噼噼啪啪……代码出炉#include<bits/stdc++.h>using namesp...原创 2021-08-17 23:23:29 · 273 阅读 · 0 评论 -
21 【c++入门】结构体
大纲1.引入2.结构体3.结构体排序4.练习1.引入【成绩查询】问题描述:xx小学上周举行了期中考试,现在期中考试成绩出来了,六(1)班的班主任老师统计了所有学生的语文、数学和英语成绩,六一班有N名学生,老师会把他们的学号和成绩都给你,他希望你能为他编写一个程序,可以根据学生的学号来查询他们的语数英的成绩。输入格式:第1行:一个整数,代表六一班的学生人数n(1 ≤ n ≤ 100)接下来N行:每行4个数据,分别代表学生的学号和语数英三门课的成绩(1 ≤ 学号 ≤.原创 2021-08-28 10:36:48 · 612 阅读 · 1 评论 -
23【c++入门】基础贪心1
大家好,我们又见面了。我们继续学习c++大纲1.引入2.最优装载3.部分背包4.案例练习1.引入最优路径问题描述:从下面的交通图中,找到一条最便宜的从合肥到北京的方式。① 最优化问题。 ② 经过一系列步骤。③ 每一步都做出当前最佳选择。 ④ 局部最优解最终能得到全局最优解。2.最优装载贪心算法:求解最优化问题的算法通常需要经过一系列的步骤,在每个步骤都面临多种选择。贪心算法是这样一种算法,它在每一步都做出当时看起来最佳的选择,也就是说它总...原创 2021-08-30 14:02:38 · 171 阅读 · 5 评论 -
19【c++入门】二维数组
大纲1.引入2.二维数组3.二维数组输入输出&实现4.案例运用5.总结1.引入班级座位在班级教室中,大家都一排排做好的,对于每一排学生,我们可以用一个一维数组来表示一排的学生需要用5个数组来表示每一排的同学int a1[10];//a1[]表示第1排的学生int a2[10];//a2[]表示第2排的学生int a3[10];//a3[]表示第3排的学生int a4[10];//a4[]表示第4排的学生int a5[10];//a5[]表示第5排的学.原创 2021-08-27 17:20:25 · 805 阅读 · 0 评论 -
13【c++入门】string的好友stringstream
哈喽,大家好呀,我们今天要讲一个string的好友stringstream1.引入2.概念及运用引导 stringstream是c++标准库提供的字符串流,作为定义字符串流的数据类型stringstream就像iostream一样,可以当做是存放数据的管道,可以把数据放入管道中也可以从管道中读取数据从iostream中读取数据到变量中是使用cin,把变量中的数据输出到iostream中是使用cout同样把数据放入stringstream和从stringst...原创 2021-08-18 14:14:48 · 189 阅读 · 1 评论 -
24【c++入门】计数原理
大纲1.引入2.抽屉原理3.加乘原理4.练习1.引入桌子上有十个苹果,要把这十个苹果放到九个抽屉里,无论怎么放,会发现至少有一个抽屉里面至少放两个苹果。【抽屉原理】抽屉原理一般含义:把n+1个元素放到n个集合中,其中必定有一个集合里至少有两个元素。抽屉原理有时也被称为鸽巢原理。从另一个角度说,把n-1件东西放入n个抽屉,则至少有一个抽屉是空的。2. 抽屉原理【第一抽屉原理】原理1:把多于n+1个物品放到n个抽屉里,则至少有一个抽屉里的物品不少于两个原理2.原创 2021-09-12 11:21:17 · 705 阅读 · 7 评论 -
23【c++入门】基础贪心2
大纲1.最优配对2.任务调整3.练习好久没更新了,因为开学了的原因,最近会更新有点慢话不多说,继续开启c++之旅1.最优配对最优配对引入问题描述: 有N个人要过河,第i个人重量为???? ???? 。每艘船的最大载重量均为???? ,且最多只能乘两个人,请问最少需要多少艘船才能将所有人一次性运过河。① 方案1: 30和40共用1艘船, 50和60各使用1艘船,共需要3艘船。② 方案2: 30和50共用1艘船, 40和60共用1艘船,共需要2艘船。③ 方案3: 30原创 2021-09-06 12:47:30 · 288 阅读 · 1 评论 -
14【c++入门】嵌套for循环
哈罗,我们继续学习c++我们在前几次课学习了for循环,现在的嵌套for会更好玩一些1.引入现在有n行数据,让你画出一个等边三角形,你能用程序实现么?好了正式开始画图形,就要找规律。现在我们先来一个简单的:长方形(实心)假如长是5,宽是3输出:***************找找规律。横向x是宽,y是长我们用代码实现核心代码:int m,n;cin>>m>>n;//n是长,m是宽for(int i=1;i<原创 2021-08-18 14:47:26 · 1832 阅读 · 0 评论 -
22【c++入门】枚举
大纲1.引入2.枚举算法3.案例练习1.引入求满足表达式A + B = C的所有整数解,A、B、C为1~5之间的整数。算法思路:① 枚举变量A、B、C的所有可能取值。② 对每种取值情况判断是否满足表达式:A + B = C。2.枚举算法枚举:所谓枚举法,指的是将所有 可能的情况一 一列举,用题目给定的检验条件 判定列举出的情况是否满足条件,满足条件的即为答案。上题解题过程:① 首先,定义问题所有可能的解(问题的解空间);② 抽象出解包含的元素,确定.原创 2021-08-28 15:57:10 · 422 阅读 · 1 评论 -
20【c++入门】class类整理
大纲1.类2.类的定义3.类的实现4.类的使用1.类在C++中, 用 "类" 来描述 "对象", 所谓的"对象"是指现实世界中的一切事物。那么类就可以看做是对相似事物的抽象, 找到这些不同事物间的共同点, 如自行车和摩托车, 首先他们都属于"对象", 并且具有一定得相同点, 和一些不同点, 相同点如他们都有质量、都有两个轮子, 都是属于交通工具等。"都有质量"、"两个轮子"属于这个对象的属性, 而"都能够当做交通工具"属于该对象具有的行为, 也称方法。 类是属于...原创 2021-08-27 19:02:01 · 304 阅读 · 2 评论 -
15【c++入门】数字标记
哈喽,大家好!今天的内容是数字标记!引入????:题目描述教室里有n盏灯,编号从1到n,全是熄灭的,第1个学生进来的时候会把所有灯都打开,第2个学生会把编号为2的倍数的灯做相反处理,接着第3个同学进来,会把所有3的倍数的灯再做相反的处理,以此类推,当第m个学生进入教室操作完成以后,还有哪些灯是开着的。输出开着的灯的编号,一行一个。(1<=m<=n <=1000 )输入格式一行,用空格隔开的两个正整数n和m输出格式顺次输出开着的灯的编号(每个编号占一行)。呵原创 2021-08-19 15:48:50 · 806 阅读 · 2 评论 -
17【c++入门】归递算法
大纲1.概念2.实现3.案例4.总结1.概念递归算法是一种直接或者间接调用自身函数或者方法的算法。递归算法的实质是把问题分解成规模缩小的同类问题的子问题,然后递归调用方法来表示问题的解。递归算法对解决一大类问题很有效,它可以使算法简洁和易于理解。递归算法,其实说白了,就是程序的自身调用。它表现在一段程序中往往会遇到调用自身的那样一种coding策略,这样我们就可以利用大道至简的思想,把一个大的复杂的问题层层转换为一个小的和原问题相似的问题来求解的这样一种策略。递归往往能给我们带..原创 2021-08-25 12:56:19 · 225 阅读 · 0 评论 -
16【c++入门】sort排序
大家好我们又见面了,我们继续学习c++大纲1.认识sort及sort的 |起始地址| 与 |结束地址|2.反序3.代码4.实例1.认识sort及sort的 |起始地址| 与 |结束地址|格式:A代表数组的名称起始下标表示要排序的首个元素在数组中的存储下标默认是从小到大排序的2.反序但是如果题目中让我们反序该怎么办呢我们在前几节课学习了子程序我们现在可以写一个反序的子程序首先,如果数是整数,那么定义成int,...原创 2021-08-21 13:19:03 · 1153 阅读 · 3 评论