2020年蓝桥杯第二次校内模拟赛C/C++B组

第一题 计算机存储中有多少字节

第二题 字母重新排列

第三题 无向连通图最少包含多少条边

第四题 合法括号序列

第五题 凯撒加密

第六题 反倍数

第七题 螺旋矩阵

第一题 计算机存储中有多少字节

问题描述

在计算机存储中,12.5MB是多少字节?

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

1G=1024MB

1MB=1024KB

1KB=1024B(Byte字节)

1B=8bit(位)

答案:12.5MB=12.5×1024KB=12.5×1024×1024B=13107200B

第二题 字母重新排列

问题描述

将LANQIAO中的字母重新排列,可以得到不同的单词,如LANQIAO、AAILNOQ等,注意这7个字母都要被用上,单词不一定有具体的英文意义。

请问,总共能排列如多少个不同的单词。

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

题解:把字母转换为数字,进行【全排列+去重】

#include

using namespace std;

int a[10],b[9999999],book[9999999],sum,ans;

void dfs(int step)

{

if(step==8){ //LANQIAO -> 2345630

sum=b[1]*1000000+b[2]*100000+b[3]*10000+b[4]*1000+b[5]*100+b[6]*10+b[7];

if(book[sum]==0){

ans++;

book[sum]=1;

for(int i=1;i<=7;i++){

printf("%d",b[i]);

}

printf("\n");

}

return;

}

for(int i=1;i<=7;i++){

if(book[i]==0){

b[step]=a[i];

book[i]=1;

dfs(step+1);

book[i]=0;

}

}

}

int main()

{

for(int i=1;i<=7;i++){

scanf("%d",&a[i]);

}

dfs(1);

printf("%d\n",ans);

return 0;

}

答案:2520

==其实从这里也能够看出,不算重复的总数时:当没有相同的字母时,全排列总数为7!/ 1!,当有2个字母相同时,全排列总数为7!/ 2!;当有3个字母相同时,全排列总数为7!/ 3! ;以此类推 ==

第三题 无向连通图最少包含多少条边

问题描述

一个包含有2019个结点的无向连通图,最少包含多少条边?

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

题解:要做出这道题,首先要知道什么是无向连通图

何为连通?连通就是指任何两个点都有边相连。无向就是没有方向。根据这一概念可以随意画出一个没有回路的无向连通图,发现n个顶点中任何两个点都有边相连最少只有n-1条边。

一个n个顶点的无向连通图最多有n(n-1) /2 条边,最少有 n-1 条边.

一个n个顶点的有向强连通图最多有 n(n-1) 条边,最少有 n 条边.

强连通图(Strongly Connected Graph)是指bai一个有向图(Directed Graph)中任意两点v1、v2间存在v1到v2的路径(path)及v2到v1的路径的图。

答案:2018

第四题 合法括号序列

问题描述

由1对括号,可以组成一种合法括号序列:()。

由2对括号,可以组成两种合法括号序列:()()、(())。

由4对括号组成的合法括号序列一共有多少种?

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

题解:这道题要么能背的出答案,要么自己画自己数,要么用程序算出。我只会第二种方法,还数少3个。真的太可惜了,这是比赛中为数不多的不需要脑子的题了,劝大家下次遇到这种题的时候一定要仔细、仔细、仔细。

参照了扶她小藜这位大神的代码,我也算是理解了。

#include

using namespace std;

int n;

int dfs(int l,int r)

{

if(l

if(l>n) return 0;

if(r==n) return 1;

return dfs(l+1,r)+dfs(l,r+1);

}

int main()

{

while(~scanf("%d",&n))

printf("%d\n",dfs(0,0));

return 0;

}

答案:14

第五题 凯撒加密

问题描述

给定一个单词,请使用凯撒密码将这个单词加密。

凯撒密码是一种替换加密的技术,单词中的所有字母都在字母表上向后偏移3位后被替换成密文。即a变为d,b变为e,…,w变为z,x变为a,y变为b,z变为c。

例如,lanqiao会变成odqtldr。

输入格式

输入一行,包含一个单词,单词中只包含小写英文字母。

输出格式

输出一行,表示加密后的密文。

样例输入

lanqiao

样例输出

odqtldr

评测用例规模与约定

对于所有评测用例,单词中的字母个数不超过100。

题解:暴力,简单字符串处理,还得要记得ASCII码。

#include

using namespace std;

char a[105];

int main()

{

cin>>a;

for(int i=0;i

if(a[i]>='a'&&a[i]<='w')

a[i]=a[i]+3;

else

a[i]=a[i]-23;

}

for(int i=0;i

printf("%c",a[i]);

return 0;

}

第六题 反倍数

问题描述

给定三个整数 a, b, c,如果一个整数既不是 a 的整数倍也不是 b 的整数倍还不是 c 的整数倍,则这个数称为反倍数。

请问在 1 至 n 中有多少个反倍数。

输入格式

输入的第一行包含一个整数 n。

第二行包含三个整数 a, b, c,相邻两个数之间用一个空格分隔。

输出格式

输出一行包含一个整数,表示答案。

样例输入

30

2 3 6

1

2

样例输出

10

1

样例说明

以下这些数满足要求:1, 5, 7, 11, 13, 17, 19, 23, 25, 29。

评测用例规模与约定

对于 40% 的评测用例,1 <= n <= 10000。

对于 80% 的评测用例,1 <= n <= 100000。

对于所有评测用例,1 <= n <= 1000000,1 <= a <= n,1 <= b <= n,1 <= c <= n。

题解:暴力

#include

using namespace std;

int n,a,b,c,ans;

int main()

{

scanf("%d",&n);

scanf("%d%d%d",&a,&b,&c);

for(int i=1;i<=n;i++){

if(i%a!=0&&i%b!=0&&i%c!=0){

ans++;

// printf("%d ",i);

}

}

printf("\n%d",ans);

return 0;

}

第七题 螺旋矩阵

问题描述

对于一个 n 行 m 列的表格,我们可以使用螺旋的方式给表格依次填上正整数,我们称填好的表格为一个螺旋矩阵。

例如,一个 4 行 5 列的螺旋矩阵如下:

1 2 3 4 5

14 15 16 17 6

13 20 19 18 7

12 11 10 9 8

输入格式

输入的第一行包含两个整数 n, m,分别表示螺旋矩阵的行数和列数。

第二行包含两个整数 r, c,表示要求的行号和列号。

输出格式

输出一个整数,表示螺旋矩阵中第 r 行第 c 列的元素的值。

样例输入

4 5

2 2

1

2

样例输出

15

1

评测用例规模与约定

对于 30% 的评测用例,2 <= n, m <= 20。

对于 70% 的评测用例,2 <= n, m <= 100。

对于所有评测用例,2 <= n, m <= 1000,1 <= r <= n,1 <= c <= m。

题解:搞人心态的题,这给了我一个教训,比赛时遇到这种磨时间的题一定要先跳过。这道题在考试结束前也没有做出来,后来实在做不了就根据weifeng2356这位大神的题解得出来的,最终也懂了。感谢感谢,嘻嘻。

#include

using namespace std;

int n,m,p,q,x,y,ans=1;

int a[1005][1005];

int derection;

int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}};//根据螺旋的方向来定优先度

int main()

{

scanf("%d%d",&n,&m);

scanf("%d%d",&p,&q);

x++,y++;

while(x!=p||y!=q){

a[x][y]=ans++;

x+=next[derection][0];

y+=next[derection][1];

if(a[x][y]!=0||x<1||x>n||y<1||y>m){

x-=next[derection][0];

y-=next[derection][1];

derection=(derection+1)%4;

x+=next[derection][0];

y+=next[derection][1];

}

}

// for(int i=1;i<=n;i++){

// for(int j=1;j<=m;j++){

// printf("%d ",a[i][j]);

// }

// printf("\n");

// }

printf("%d",ans);

return 0;

}

总结:看得出第二次校内模拟比第一次校内模拟难得不是一星半点,这的难度应该是最接近蓝桥省赛了,10题中做出了5道,假如这是真正的省赛我应该无缘省一进国赛了。后三题实在不会做,看大神们的题解大都使用到了DP,最小生成树以及DFS+剪枝。这部分的知识我没有学习到实在看不懂,日后看懂了再更新文章。但既然知道省赛要考这些,接下来的复习应该要着重看这部分的内容了。除了以上三种知识点,常考的还有贪心,字符串处理。加油吧!

2018年计算机蓝桥杯题目,2020年蓝桥杯第二次校内模拟赛C/C++B组相关推荐

  1. 2021年 第十二届蓝桥杯第二期校内模拟赛题解(Java版)

    时隔多日,终于会写一些简单DP了哈哈哈! 稍微改版,方便阅读,若有错,请指出 2019年 第十届蓝桥杯省赛题解(JavaB组版) 2020年 第十一届蓝桥杯第一场省赛题解(JavaB组版) 2020年 ...

  2. 蓝桥杯校内模拟赛_C++组

    蓝桥杯校内模拟赛 填空题 填空题比较简单,只需要在空格中填写整数答案即可: 在计算机存储中,15.125GB是多少MB? 解题思路: 1GB=1024MB,打开系统计算器计算即可 答案: 15488 ...

  3. [蓝桥杯第十一届校内模拟赛] Apare_xzc

    华中师范大学蓝桥杯第十一届校内模拟赛 2020/3/22 8:00-12:00 题目还是比省赛要简单的,我9:25就做完了. 第一题 分析: 简单题,求给定的1200000的正约数的个数.我们可以暴力 ...

  4. 第十三届蓝桥杯模拟赛第二期JAVA组个人题解

    第十三届蓝桥杯模拟赛第二期JAVA组个人题解 文章目录 第十三届蓝桥杯模拟赛第二期JAVA组个人题解 题目1 题目2 题目3 题目4 题目5 题目6 题目7 题目8 题目9 题目10 题目1 小蓝的I ...

  5. 第十四届蓝桥杯校内模拟赛第二期-Java个人题解(仅供参考)

    刚刚结束第十四届蓝桥杯校内模拟赛第二期,在这记录下自己的代码 不保证正确! 不保证正确! 不保证正确! 有问题一起改正!! 题解 2048 代码: package _14届模拟2;public cla ...

  6. 第十四届蓝桥杯校内模拟赛第一期——Python

    第十四届蓝桥杯校内模拟赛第一期--Python 文章目录 第十四届蓝桥杯校内模拟赛第一期--Python 1.二进制位数 问题描述 参考答案 扩展 2. 晨跑 问题描述 参考答案 扩展 3. 调和级数 ...

  7. 【蓝桥】软件校内模拟赛(二)反倍数 题目+题解

    文章目录 前言 反倍数 题目描述 前言 本题解为第十一届软件类校内模拟赛个人题解,但非官方满分题解,因此,可能存在下列问题 题意理解错误,导致答案错误. 代码中存在一些问题,导致答案错误. 算法复杂度 ...

  8. 【蓝桥】第十一届软件类校内模拟赛(二)填空题部分

    起晚了起晚了,比赛都快结束了才整完qwq 文章目录 前言 填空题 1题目描述 2题目描述 3题目描述 4题目描述 前言 本题解为第十一届软件类校内模拟赛个人题解,但非官方满分题解,因此,可能存在下列问 ...

  9. 【蓝桥】第十一届软件类校内模拟赛(一)

    前言 本题解为第十一届软件类校内模拟赛个人题解,但非官方满分题解,因此,可能存在下列问题 题意理解错误,导致答案错误. 代码中存在一些问题,导致答案错误. 算法复杂度的分析有误,导致不能在规定时间内得 ...

  10. 第十四届蓝桥杯第三期模拟赛 C/C++ B组 原题与详解

    本篇文章对第十四届蓝桥杯第三期模拟赛所有的题目进行了详细解析.如果大家还想刷题的话,我给大家整理出了第十二届的省赛真题:第十二届省赛C/C++ B组真题.推荐大家可以去做一下. 文章目录 一.填空题 ...

最新文章

  1. c语言:输出一个菱形图
  2. common pool2 mysql_连接池Commons Pool2的使用
  3. DIV + CSS布局的一些知识汇总
  4. java多线程notifyall_Java多线程:线程状态以及wait(), notify(), notifyAll()
  5. Linux rescue救援(光盘修复)模式详解
  6. 【echarts】 tooltip显示图片
  7. python sftp连接_Python 脚本:创建SFTP连接传输数据
  8. matlab图片模板匹配算法,基于Matlab-图像匹配——模板匹配.docx
  9. Stream.sorted
  10. dts音效大师安卓版_dts音效大师手机app下载-dts音效大师安卓手机app下载-电玩之家...
  11. ICE for Linux
  12. java项目笔记 - 第18章:坦克大战2.1
  13. 论文阅读笔记:An End-to-End Trainable Neural Network Model with Belief Tracking for Task-Oriented Dialog
  14. 禅与摩托车维修艺术(4)
  15. 3D音频理论研究(二)---3D全介绍(转)
  16. 从企业钉钉的接口获取数据
  17. C++刷力扣、PAT第一周笔记
  18. Unity通过刚体组件和C#脚本,施加力实现物体下落并滚离平面 及相机跟随物体
  19. iOS初级开发工程师进阶之路
  20. Fluent Meshing 高效准确读入CAD模型343攻略

热门文章

  1. 让Qt程序在运行到Nokia手机上
  2. 配置Universal Links 笔记
  3. python爬取FY-4作为桌面背景
  4. 微信营销是短暂的狂欢
  5. ios判断邮箱,手机号码,车牌号是否合法(正则表达)
  6. 嵊州职教中心计算机多少分数,嵊州市职技校还是职教中心好
  7. //众神云集、群魔乱舞、以一抵百、砥砺前行//18108 chocola isn‘t so skillful
  8. 【深刻教训】做实验,写paper
  9. 【Nmap脚本引擎(NSE)的学习笔记-1】
  10. SQL Server 备份 出现操作系统错误 5(拒绝访问。)