
c++
文章平均质量分 51
“黎明”
这个作者很懒,什么都没留下…
展开
-
C语言 typedef 和 #define详解
类型定义 (typedef)摘自 《C程序设计语言》6.7节C语言提供了一个称为typedef的功能,它用来建立新的数据类型名,例如,声明typedef int Length;将Length定义为与int具有同等意义的名字。类型Length可用于类型声明、类型转换等,它和类型int完全相同,例如:Length len, maxlen;Length *lengths [ ] ;类似地,声明typedef char* string;将string 定义为与 char *或字符指针同义,此原创 2022-04-25 10:20:41 · 3258 阅读 · 0 评论 -
C++substr()函数用法
substr函数格式 (字符截取函数) 格式1: substr(string string, int a, int b);格式2:substr(string string, int a) ;解析:格式1: 1、string 需要截取的字符串 2、a 截取字符串的开始位置(注:当a等于0或1时,都是从第一位开始截取) 3、b 要截取的字符串的长度格式2: 1、string 需要截取的字符串 2、a 可以理解为从第a个字符开始截取后面所有的字符串。s原创 2020-11-16 21:17:51 · 784 阅读 · 0 评论 -
C++11常用函数总结
int sum;string ss;sum=stoi(ss);//字符串转为整形数字ss=to_string(sum);//数字转为字符串原创 2020-11-16 21:11:21 · 263 阅读 · 0 评论 -
第十一届蓝桥杯 省赛 试题 H: 子串分值和
问题描述:对于一个字符串 S,我们定义 S 的分值 f(S ) 为 S 中出现的不同的字符个 数。例如 f(”aba”) = 2,f(”abc”) = 3, f(”aaa”) = 1。 现在给定一个字符串 S [0…n − 1](长度为 n),请你计算对于所有 S 的非空 子串 S [i… j](0 ≤ i ≤ j < n),f(S [i… j]) 的和是多少。【输入格式】输入一行包含一个由小写字母组成的字符串 S。【输出格式】输出一个整数表示答案。【样例输入】ababc【样例输出】原创 2020-11-04 16:39:49 · 5534 阅读 · 9 评论 -
String构造方法详解
string strs //生成空字符串string s(str) //生成字符串str的复制品string s(str, stridx) //将字符串str中始于stridx的部分作为构造函数的初值string s(str, strbegin, strlen) //将字符串str中始于strbegin、长度为strlen的部分作为字符串初值string s(cstr) //以C_string类型cstr作为字符串s的初值string s(cstr,char_len) //以C_string转载 2020-11-01 10:34:40 · 815 阅读 · 0 评论 -
第十一届蓝桥杯省赛C++B组跑步锻炼
题目描述:运用代码模拟:#include <bits/stdc++.h>using namespace std;int M[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};int main(){ int y=2000,m=1,d=1,w=6,ans=2; while(y!=2020||m!=10||d!=1) { if((y%4==0&&y%100!=0)||y%400==0) M[2]=29; else原创 2020-11-01 09:34:01 · 899 阅读 · 2 评论 -
dfs例题:蓝桥杯方格分割
标题:方格分割6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。如图:p1.png, p2.png, p3.png 就是可行的分割法。试计算:包括这3种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。请提交该整数,不要填写任何多余的内容或说明文字。#include<bits/stdc++.h>using namespace std;int dir[4][2]={{1,0},{0,-1},{0,1},{-1,0}};char原创 2020-10-16 17:17:00 · 179 阅读 · 0 评论 -
bfs例题:蓝桥杯迷宫
bfs广度优先搜索例题:#include<bits/stdc++.h>using namespace std;int dir[4][2]={{1,0},{0,-1},{0,1},{-1,0}};char d[4]={'D','L','R','U'},a[100][100];int v[100][100],n=50,m=30;struct point{ int x,y; string road; point(int a,int b) { x=a; y=b; }};原创 2020-10-16 17:09:18 · 234 阅读 · 0 评论 -
第十一届蓝桥杯省赛 C/C++ 大学B组 第一场(2020.7.5) 试题D REPEAT 程序
可以写个程序把源代码翻译成C语言。#include<bits/stdc++.h>using namespace std;int main(){ string s; char c='a'; int d=0; freopen("1.txt","r",stdin); FILE *fp; fp=fopen("2.txt","w"); int i=0,p=0; fprintf(fp,"int A=0,"); for(int t=0;t<1000;t++) { fpri原创 2020-10-08 17:36:03 · 598 阅读 · 0 评论 -
十进制转为8位补码
void get(int m){ int i=0,j,a[8],n=m; if(m<0) m+=256; while(m>0) { a[i++]=m%2; m/=2; } int t=i; for(j=0;j<8-t;j++) { a[i++]=0; } for(i=7;i>=0;i--) cout<<a[i]; 这里主要是负数的补码,负数的补码为正数除符号位取反再加1,这里直接加256就好了。...原创 2020-10-08 15:00:16 · 1572 阅读 · 0 评论 -
第十届蓝桥杯省赛C++B组 等差数列
第十届蓝桥杯省赛C++B组 等差数列ryo_218 2019-03-26 23:33:19 1210 收藏 1分类专栏: 蓝桥杯版权试题 H:等差数列时间限制:1.0s 内存限制:256.0MB 本题总分:20 分【问题描述】 数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一 部分的数列,只记得其中 N 个整数。 现在给出这 N 个整数,小明想知道包含这 N 个整数的最短的等差数列有几项?【输入格式】 输入的第一行包含一个整数 N。原创 2020-10-04 15:59:29 · 661 阅读 · 0 评论 -
STL之全排列next_permutation()函数的用法
next_permutation()函数包含在< algorithm>里面,next_permutation()函数是按照字典序产生排列的,并且是从数组中当前的字典序开始依次增大直至到最大字典序。使用的基本格式为:int a[];do{}while(next_permutation(a + n));举例:#include<iostream>#include&...原创 2020-01-29 10:40:36 · 197 阅读 · 0 评论 -
蓝桥杯十六进制转八进制(大数)
问题描述 给定n个十六进制正整数,输出它们对应的八进制数。输入格式 输入的第一行为一个正整数n (1<=n<=10)。 接下来n行,每行一个由09、大写字母AF组成的字符串,表示要转换的十六进制正整数,每个十六进制数长度不超过100000。输出格式 输出n行,每行为输入对应的八进制正整数。【注意】 输入的十六进制数不会有前导0,比如012A。 输出的八进制...原创 2019-12-16 19:16:22 · 110 阅读 · 0 评论 -
C++常用数据类型的取值范围
int -2147483648~2147483647 (2e9)long long -9223372036854775808~9223372036854775807 (9e18)原创 2019-12-14 13:40:37 · 346 阅读 · 0 评论 -
C++求最大公约数
用__gcd()函数求最大公约数#include <iostream>#include <algorithm>//头文件是这个算法using namespace std;int a,b; int main(){ cin>>a>>b; cout<<__gcd(a,b)<<endl; return 0;...原创 2019-11-26 22:24:41 · 329 阅读 · 0 评论 -
C++ stack 和 queue
C++ Stack(堆栈) 是一个容器类的改编,为程序员提供了堆栈的全部功能,——也就是说实现了一个先进后出(FILO)的数据结构。操作 比较和分配堆栈empty() 堆栈为空则返回真pop() 移除栈顶元素push() 在栈顶增加元素size() 返回栈中元素数目top() 返回栈顶元素C++队列是一种容器适配器,它给予程序员一种先进先出(FIFO)的数据结构。back() 返回...原创 2019-11-20 15:54:14 · 189 阅读 · 0 评论 -
C++ vector
Constructors 构造函数Operators 对vector进行赋值或比较assign() 对Vector中的元素赋值at() 返回指定位置的元素back() 返回最末一个元素begin() 返回第一个元素的迭代器capacity() 返回vector所能容纳的元素数量(在不重新分配内存的情况下)clear() 清空所有元素empty() 判断Vector是否为空(返回tr...原创 2019-11-20 15:45:26 · 101 阅读 · 0 评论 -
C++ String
Constructors 构造函数,用于字符串初始化Operators 操作符,用于字符串比较和赋值append() 在字符串的末尾添加文本assign() 为字符串赋新值at() 按给定索引值返回字符begin() 返回一个迭代器,指向第一个字符c_str() 将字符串以C字符数组的形式返回capacity() 返回重新分配空间前的字符容量compare() 比较两个字符串co...原创 2019-11-20 15:43:28 · 95 阅读 · 0 评论 -
C++排序1025 PAT Ranking (25 分)
Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test is supposed to run simultaneously in several places, and the ranklists w...原创 2019-11-20 15:28:00 · 148 阅读 · 0 评论 -
蓝桥杯 问题 1004:母牛的故事
问题 1004: [递归]母牛的故事时间限制: 1Sec 内存限制: 128MB题目描述有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?输入输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。n=0表示输入数据的结束,不做处理。输出对于每个...原创 2019-10-01 17:29:07 · 578 阅读 · 0 评论 -
L1-009 N个数求和 (20 分)(含易错点:测试点3)
L1-009 N个数求和 (20 分)本题的要求很简单,就是求N个数字的和。麻烦的是,这些数字是以有理数分子/分母的形式给出的,你输出的和也必须是有理数的形式。输入格式:输入第一行给出一个正整数N(≤100)。随后一行按格式a1/b1 a2/b2 …给出N个有理数。题目保证所有分子和分母都在长整型范围内。另外,负数的符号一定出现在分子前面。输出格式:输出上述数字和的最简形式 —— 即将结...原创 2019-10-02 17:17:48 · 4970 阅读 · 0 评论 -
求最小公倍数和最大公约数
#include<bits/stdc++.h> using namespace std;int Max(int a,int b)//递归方法实现 最大公约数 { int mi=min(a,b),ma=max(a,b); if(ma%mi==0)return mi; else return Max(mi,ma%mi);}int Max2(int a,int b)//非递归...原创 2019-10-03 11:08:57 · 130 阅读 · 0 评论 -
L1-020 帅到没朋友 (20 分)C++实现
L1-020 帅到没朋友 (20 分)当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友。本题就要求你找出那些帅到没有朋友的人。输入格式:输入第一行给出一个正整数N(≤100),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(≤1000),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以...原创 2019-10-04 16:40:03 · 3257 阅读 · 0 评论 -
天梯赛 L3-010 是否完全二叉搜索树 (30 分)(C++实现)
天梯赛: L3-010 是否完全二叉搜索树 (30 分)将一系列给定数字顺序插入一个初始为空的二叉搜索树(定义为左子树键值大,右子树键值小),你需要判断最后的树是否一棵完全二叉树,并且给出其层序遍历的结果。输入格式:输入第一行给出一个不超过20的正整数N;第二行给出N个互不相同的正整数,其间以空格分隔。输出格式:将输入的N个正整数顺序插入一个初始为空的二叉搜索树。在第一行中输出结...原创 2019-10-05 14:14:01 · 370 阅读 · 0 评论 -
L1-043 阅览室 (20 分)C++实现(含测试点1测试点3)
L1-043 阅览室 (20 分)天梯图书阅览室请你编写一个简单的图书借阅统计程序。当读者借书时,管理员输入书号并按下S键,程序开始计时;当读者还书时,管理员输入书号并按下E键,程序结束计时。书号为不超过1000的正整数。当管理员将0作为书号输入时,表示一天工作结束,你的程序应输出当天的读者借书次数和平均阅读时间。注意:由于线路偶尔会有故障,可能出现不完整的纪录,即只有S没有E,或者只有E没有...原创 2019-10-06 16:36:49 · 2126 阅读 · 4 评论 -
L1-049 天梯赛座位分配 (C++)
L1-049 天梯赛座位分配 (20 分)天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员...原创 2019-10-07 17:54:53 · 1979 阅读 · 2 评论 -
天梯赛 L2-001 紧急救援 (迪杰斯特拉算法实现)
题目链接L2-001 紧急救援 (25 分)作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图。在地图上显示有多个分散的城市和一些连接城市的快速道路。每个城市的救援队数量和每一条连接两个城市的快速道路长度都标在地图上。当其他城市有紧急求助电话给你的时候,你的任务是带领你的救援队尽快赶往事发地,同时,一路上召集尽可能多的救援队。输入格式:输入第一行给出4个正整数N、M、S、D,其中N...原创 2019-10-01 17:04:53 · 504 阅读 · 0 评论