2022年3月蓝桥杯蓝桥C++(STEMA)中/高级
STEMA
2022
2024-01-02 20:56:17
93次
一、编程题
最大值
题目描述:
给定一个正整数M(1≤M≤5)和一个只包含数字的字符串(5<字符串长度≤20)。使用M个乘号插入到字符串中,且两个乘号不能相邻,插入后生成一个乘法算式。找出一种使乘法算式数值最大的插入方式,并将结果输出。 (乘号不能放在字符串的首尾位置)
如M=2,字符串为123456,插入2个乘号。插入方式有:
1*2*3456=6912,1*23*456=10488,1*234*56=13104,1*2345*6=14070,12*3*456=16416,12*34*56=22848,12*345*6=24840,123*4*56=27552,123*45*6=33210,1234*5*6=37020,
其中乘法算式数值最大是第十种,为37020。
输入描述:
第一行输入一个正整数M(1≤M≤5),表示乘号个数。
第二行输入一个只包含数字的字符串(5<字符串长度≤20),表示要插入M个乘号的字符串。
输出描述:
输出一个整数,表示最大乘积数值。
样例输入:
2 123456
样例输出:
37020
【知识点】 蓝桥杯C++中/高级
猴子摘桃子
题目描述:
果园有M行N列套数,每棵书上有一定数量的桃子。猴子从左上角的桃树开始进入果园摘桃子,每到一个桃树下都会将树上的桃子摘完,但猴子每次只能移动到当前所在桃树的下边或右边的桃树下摘桃子,照这个移动方案,猴子在果园中最多可以摘到多少桃子。
现给出M和N的值,以及每棵桃树上的桃子数量,照移动方案,计算出猴子在果园最多可以摘到多少桃子。
例如:M=2 ,N=3
桃子数量为
2 3 1
1 4 2
这种情况下,为了摘到最多的桃子,猴子摘桃子的顺序应为2,3,4,2,总桃子数为11。
输入描述:
第一行输入正整数 M和N,分别代表行数和列数 。
之后输入M行N列每课桃树上的桃子数量。
输出描述:
一个正整数,代表猴子按移动规则在果园中最多可以摘到多少桃子。
输入样例:
2 3 2 3 1 1 4 2
输出样例:
11
【知识点】 蓝桥杯C++中/高级
分糖果
题目描述:
有N个小朋友从左到右排成一排,每个小朋友手中都有一定数量的糖果,且糖果总数量是N的倍数。计算出最少调整几次可以使每个小朋友的糖果数量相同。调整规则如下:
规则1:每个小朋友的糖果只能调整到左右相邻的两个小朋友手中;
规则2:第一个小朋友的糖果只能调整到第二个小朋友手中;
规则3:最后一个小朋友的糖果,只能调整到倒数第二个小朋友手中。

例如:N等于3时,1~3号小朋友原有糖果数量分别为6,4,2。
1)1号小朋友拿出两块给2号小朋友;
2)2号小朋友拿出两块给3号小朋友;
两次操作后三个小朋友手中糖果分别为4,4,4。即按照调整规则最少操作2次可以使3个小朋友手中糖果数量都相同。
现按照顺序给出1~N号小朋友手中原有糖果数量,按照调整规则计算出最少调整几次可以使小朋友手中的糖果数量都相同。
输入描述:
第一行输入一个正整数N(N<50),表示有N个小朋友
第二行输入N个正整数(1<正整数<100),表示1到N号小朋友手中原有糖果数量,正整数之间以一个空格隔开,且所有正整数之和是N的倍数
输出描述:
输出一个正整数,表示按照调整规则最少调整几次可以使小朋友手中的糖果数量都相同。
样例输入:
3 642
样例输出:
2
【知识点】 蓝桥杯C++中/高级
