第十四届蓝桥杯青少组选拔赛C++真题(2022年8月21日)

2023年06月02日

编程题

第 1 题 问答题

编程实现:

个位数

题目描述:

给定一个正整数N(10 < N < 1000),输出正整数个位上的数字。

输入描述

输入一个正整数N(10 < N < 1000)

输出描述

输出正整数N个位上的数字

样例输入

123

样例输出

3

第 2 题 问答题

编程实现:

判断数字

题目描述:

给定一个正整数N(100 ≤ N < 100000),统计出100到N(包含100和N)之间的正整数中,有多少个正整数满足以下条件:

1)正整数个位数不为3;

2)正整数十位数不为5;

3)正整数百位数不为7。

输入描述

输入一个正整数N(100 <= N < 100000)

输出描述

输出100到N(包含100和N)之间有多少个正整数满足条件

样例输入

110

样例输出

10

第 3 题 问答题'

编程实现:

去重

题目描述:

给定一个长度小于200的字符串s,且字符中只包含小写字母,然后按照以下要求对字符串s进行去重,并输出去重后的字符串。

要求:

1)如果有重复出现的字母,只保留1个,其他的去掉;

2)不得改变各字母相对位置;

3)保证去重后的字符串的字典序最小。

例如:

s=“cacd”,重复的字母有c,如果去掉第一个字母c,结果为acd;如果去掉第二个字母c结果为cad.比较两个去重后的结果,第一个结果的字典序小于第二个结果的字典序,故选择去掉第一个c,输出acd。

输入描述

输入一个长度小于200的字符串s。且字符串中只包含小写字母

输出描述

按照要求对字符串s进行去重,并输出

样例输入

cdacd

样例输出

acd

提示信息:

字典序大小,是指字符串中字母在字母表中的先后顺序,即字母表中越靠前的字母,字典序越小。

例如:两个字符串acd和cad,两个字符率的第一个字母分别为“a”和“c”,其中“a”在字母表中排在“c”的前边,故字符串acd字典序小于字符出cad。假如第一个字母相同。就比较第二个字母,以此类推。

第 4 题 问答题

编程实现:

路径最小和

题目描述:

有一个N*M的矩阵方格,每个方格中都有一个正整数,现从左上角方格出发向右下角方格移动,每次只能向下或句右移动一个方格,请你找出一条最小路径、并输出该路径上的正整数之和。

最小路径:这条路径上的正整数之和最小。

例如:

N=2、M=3。2*3的矩阵方格中的正整数如下,按照移动规则,从左上角方格移动到右下角方格的路径共3条,分别为1->3->5->6;1->3->4->6;1->2->4->6。3条路径上的正整数之和分别为15、14和13。其中正整故之和最小的一条路径是1->2->4->6。和为13。故输出13。

输入描述

第一行输入两个正整数N和M(2<=N<=100,2<=M<=100),N表示矩阵方格的行数,M表示矩阵方格的列数,两个正整数之间以一个空格隔开

第二行开始输入N行,每行M平整数(1≤正整数≤200)。正整数之间以一个空格隔开

输出描述

输出一个整数,表示最小路径上的正整数之和

样例输入

2 3
1 3 5
2 4 6

样例输出

13