蓝桥
守望↪星空
在读大学生,分享学习的点点滴滴!欢迎关注!
展开
-
【蓝桥】递归专题及模板
什么时候用递归:1.一个问题可以分为若干子问题去解2.可以写成树的形式3.变量在每个阶段不一样例题:求n的阶乘#include <bits/stdc++.h>using namespace std;int sum=1,i=1;int digui(int n,int sum,int i){//开始应该带进来的值和随着递归变换的值 if(i==n){ sum=i*sum; return sum; }else{ digui(n,sum*i,i+1);原创 2021-04-17 22:35:52 · 80 阅读 · 0 评论 -
【蓝桥】《算法笔记》字符串处理
输入字符串,按要输出字符串#include <bits/stdc++.h>using namespace std;int main(){ char ans[90][90]; //输入 for(int i=0;i<=1;i++){ scanf("%s",&ans[i]); } //%c,%s输出对比 printf("%s\n",ans[0]); printf("%c",ans[0][1]); return 0;}结果输出:...原创 2021-04-17 19:55:51 · 49 阅读 · 0 评论 -
【蓝桥】《算法笔记》回文字符串
题目:#include <bits/stdc++.h>using namespace std;const int maxn=256;//判断字符串str是否为回文串bool judge(char str[]){ int len = strlen(str); //字符串长度 for(int i=0;i<len/2;i++){ //枚举字符串的前一半 if(str[i] != str[len-1-i]){ //如果对称位置不同 return false;原创 2021-04-17 19:40:34 · 80 阅读 · 0 评论 -
【蓝桥】《算法笔记》进制转换----模板
将p进制数转换为Q进制数#include <bits/stdc++.h>using namespace std;int main(){ int p=2,Q=16,x=10011;//x为二进制 /**将P进制数转换为Q进制数**/ // 1.将p进制数x转换为十进制数y int y=0,product=1;//public在循环中会不断的乘以p,得到 1、p、p*p、p*p*p.... while(x!=0){ y=y+(x%10)*product; //原创 2021-04-17 18:34:29 · 83 阅读 · 0 评论 -
【蓝桥】第十一届第二场b组C++-----回文日期
题目:代码展示#include <bits/stdc++.h>using namespace std;int b=0,c=0;//平年和闰年每个月的天数int mouth[13][2]={{0,0},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31}};//判断是否为闰年(记忆)bool isLeap(int year){ return原创 2021-04-17 17:35:11 · 77 阅读 · 0 评论 -
【蓝桥】判断一个数是不是回文
#include <bits/stdc++.h>using namespace std;int a=2002;//输入一个数判断他是不是回文 bool hw(int a){ int a1,a11,a111,a1111; a1=a%10; a11=a/10%10; a111=a/100%10; a1111=a/1000; printf("%d %d %d %d",a1,a11,a111,a1111); return ((a1==a1111) && (a11原创 2021-04-17 17:32:57 · 48 阅读 · 0 评论 -
【蓝桥】《算法笔记》日期差值---日期模板看这个
两个日期之间有几天,若日期为连续的他们的天数为两天#include <bits/stdc++.h>using namespace std;//平年和闰年每个月的天数int mouth[13][2]={{0,0},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31}};//判断是否为闰年(记忆)bool isLeap(int year){ ret原创 2021-04-17 15:25:45 · 88 阅读 · 0 评论 -
【蓝桥】递归以及DFS算法分析以及模板
概述递归就相当于遍历树,而常见的遍历二叉树,也就是DFS(深度遍历)适用问题1.具有目标函数和约束条件2.求最大最小问题模型分析模板头文件变量定义:涉及到递归用到的都用全局变量 void dfs(int 本次循环直接影响的变量,...,int index(当前层数)){ if(index==n(最大层数)){//当前层数等于总层数:这个固定不变,因为是在算完这条路线的所有结点之后才去判断 if(变量大小限制 && 约束条件){ 更新目标函数 }原创 2021-04-16 19:55:36 · 159 阅读 · 0 评论 -
【蓝桥】心得
审题时将题中重点写在纸上,要不会忘记题中的一些细节而得不到满分原创 2020-10-13 12:30:01 · 121 阅读 · 0 评论 -
【蓝桥】蓝桥练习系统----给定圆的半径r,求圆的面积。
题目:问题描述给定圆的半径r,求圆的面积。输入格式输入包含一个整数r,表示圆的半径。输出格式输出一行,包含一个实数,四舍五入保留小数点后7位,表示圆的面积。#include <bits/stdc++.h>using namespace std;int main(){ double t=0,S; int r; scanf("%d",&r); t=acos(-1.0); S=t*r*r; printf("%0.7f",S); return 0;}原创 2020-10-13 10:59:01 · 812 阅读 · 0 评论 -
【蓝桥】蓝桥练习系统--求1+2+3+...+n的值
#include <bits/stdc++.h>using namespace std;int main(){ long long n,m=0; scanf("%I64d",&n); for(int i=1;i<=n;i++){ m=m+i; } printf("%I64d",m); return 0;}心得:(1)因数值太大,所以需要定义long long型。(2)long long 型输入输出是%I64d...原创 2020-10-13 10:39:36 · 192 阅读 · 0 评论 -
【第九届蓝桥杯省赛c/c++B组真题解析】9.全球变暖
问题描述标题:全球变暖你有一张某海域NxN像素的照片,".“表示海洋、”#"表示陆地,如下所示:….##….##……##.…####.…###.…其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。例如上图中的海域未来会变成如下样子:……………#………请你计算:依照科学家的预原创 2020-08-23 19:51:50 · 561 阅读 · 1 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】5.迷宫
问题描述解题方法BFS(广度优先搜索算法)常用于迷宫类题目代码展示#include <bits/stdc++.h>using namespace std;const int maxn=50;//定义数组时用//结构提记录位置和步数struct node{ int x,y;//位置(x,y) int step;//最小步数 }S,T,Node;// S为起点,T为终点,Node为临时结点int n,m;//地图的行和列char maze[maxn][maxn];原创 2020-08-23 15:56:20 · 240 阅读 · 0 评论 -
【蓝桥】算法笔记DFS例题1----背包最大值
题目有n件物品每件物品的重量w[i],价值c[i]。现在要选择若干个物品放入一个容量为V的背包,使得在选入背包的物品重量和不超过容量V的前提下,让背包中物品之和的价格最大,求最大值?分析过程代码//因为不确定件数,所以不能用枚举 //DFS适用于在确定for的层数(实际不确定)时可用枚举的情况下 #include <bits/stdc++.h>using namespace std;const int maxn=30; //加const的作用是将其设置为常数,如果不加后面还可原创 2020-08-21 16:50:19 · 336 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】8.等差数列
问题描述样式输出10解题方法(排序,最小公约数)排序输入的数列,每相邻两项的差进行排序,求全部差的最大公约数为等差数列的公差,根据公差算出最少有多少项代码展示#include <bits/stdc++.h>using namespace std; int gcd(int a,int b){ return !b ? a : gcd(b,a%b);} int a[100001];int b[100000];int main(){ int n,i,j,max_y,.原创 2020-08-15 16:53:27 · 245 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】7.完全二叉树的权值
问题描述解题方法用到完全二叉树的特征:深度n的元素个数是2的n次方-1代码展示#include <bits/stdc++.h>using namespace std; int a[100000];int main(){ //输入个数 int n,i,m,max1,c,z=1; //实现输入 scanf("%d",&n); for(i=0;i<n;i++){ scanf("%d",&a[i]); } //实现相同深度权值最大的最.原创 2020-08-15 15:11:47 · 296 阅读 · 1 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】6.特别数的和
问题描述解题方法str.find(‘2’) != string::npos代码展示#include <cstdio>#include <string>#include <sstream>using namespace std;int a[2020];//数字原模原样的转换为字符串 void i2s(int i,string &s){ stringstream stream; stream << i; .原创 2020-08-10 14:36:36 · 179 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】4.数的分解
问题描述把 2019分解成 3个各不相同的正整数之和,并且要求每个正整数都不包含数字2和4,一共有多少种不同的分解方法?注意交换 3个整数的顺序被视为同一种方法,例如1000+1001+18和1001+1000+18被视为同一种。解题方法暴力(枚举)代码展示#include <stdio.h>int main(){ int i,j,z,n=0; for(i=1;i<=2019;i++){ for(j=1;j<=2019;j++){ z=2.原创 2020-08-10 10:53:20 · 193 阅读 · 0 评论 -
【蓝桥杯】c++知识补存及需注意的地方
1.引用引入原因函数内的为局部变量,引用可实现全局变量的功能,函数的参数名可以和实际的参数名不同代码#include <stdio.h>void change(int &x){ x=1;} int main(){ int x=10; change(x); printf("%d",x); return 0; }...原创 2020-08-10 09:24:49 · 223 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】3.数列求值
问题描述给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。求第 20190324 项的最后 4 位数字。解题方法斐波那契数列(三项),对每一次求出的数据%10000.答案4659代码#include <stdio.h>int n[20190325];int main(){ int m,i; n[1]=n[2]=n[3]=1; for(i=4;i<=20190324;i++){ n[i]=(n[i-1].原创 2020-08-10 08:27:45 · 212 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】2.年号字串
问题小明用字母 A对应数字 1,B对应 2,以此类推,用 Z对应 26。对于 27以上的数字,小明用两位或更长位的字符串来对应,例如 AA对应27,AB对应28,AZ对应52,LQ对应329。请问2019对应的字符串是什么?解题方法:除法答案:BYQ...原创 2020-08-10 07:51:38 · 553 阅读 · 0 评论 -
【第十届蓝桥杯省赛c/c++B组真题解析】1.组队
解题方法:excel参考:https://blog.csdn.net/kajweb/article/details/88811136估计选择前十项,然后先确定肯定可以确定的,然后分情况讨论其余的。答案:490原创 2020-08-10 07:38:54 · 192 阅读 · 0 评论