1、序列排序
【题目描述】
默认小猫角色和白色背景。
对于给定的正整数序列“lst”,按照每个数的各位数之和从大到小排序,各位数之和相同的按照本身大小排序,大的在前,小的在后,结果仍存放在列表“lst”中。
比如:lst = [17, 26, 9, 13, 88, 10],各位数之和为[ 8 (17), 8 (26), 9(9),4 (13), 16 (88), 1 (10)],按照由大到小排序[16 (88), 9(9), 8(26), 8(17), 4(13),1(10)],由于 26 和 17 各位数的和都是 8,所以按照本身由大到小排序26 排在17前面,最后排序的结果为[88, 9, 26, 17, 13, 10]。
【输入描述】
新建列表“lst”,用于存储原始的数据。
如下图所示:
【输出描述】
仍使用列表“lst”,用于存储得到的结果。
如下图所示:
【输入样例】
lst = [17, 26, 9, 13, 88, 10]
【输出样例】
lst = [88, 9, 26, 17, 13, 10]
【输入样例】
lst = [70, 73, 79, 22, 15, 12]
【输出样例】
lst = [79, 73, 70, 15, 22, 12]
注意:
1、列表名的拼写(包括大小写)要和题目完全一致。
2、列表直接用“+”功能赋值进行测试即可,无需写代码赋值。
参考实现
小猫分鱼
【题目描述】
默认小猫角色和白色背景。
海滩上有一堆鱼,N 只小猫来分。第一只小猫把这堆鱼平均分为N 份,多了i(i<N)个,这只小猫把多的 i 个扔入海中,拿走了一份。第二只小猫接着把剩下的鱼平均分成 N 份,又多了 i 个,小猫同样把多的 i 个扔入海中,拿走了一份。第三、第四、……,第 N 只小猫仍是最终剩下的鱼分成 N 份,扔掉多了的i 个,并拿走一份。
编写程序,输入小猫的数量 N 以及每次扔到海里的鱼的数量i,输出海滩上最少的鱼数,使得每只小猫都可吃到鱼。
例如:两只小猫来分鱼 N = 2,为了每只小猫都可吃到鱼,可令第二只小猫需要拿走 1 条鱼,则此时待分配的有 3 条鱼。第一只小猫待分配的鱼有3*2+1=7 条。
【输入描述】
输入一个整数存储在变量“N”中,表示小猫的个数,输入一个整数存储在变量“i”中,表示每次扔掉鱼数(0<N<10,i<N )。
如下图所示:
【输出描述】
输出一个整数存储在变量“result”中,表示当小猫数量为N 时,海滩上最少的鱼数。
如下图所示:
【输入样例】
N = 2
i = 1
【输出样例】
result = 7
【输入样例】
N = 3
i = 1
【输出样例】
result = 25
【样例解释】
三只小猫来分鱼 N=3,每次扔掉鱼的数量为 i=1,为了每只小猫都可吃到鱼,可令第三只小猫需要拿走 3 条鱼(拿走 1 条和 2 条不满足要求),则此时待分配的有10 条鱼。第二只小猫待分配的鱼有 10×3/2+1=16 条。第一只小猫待分配的鱼有16×3/2+1=25 条。
注意:
1、变量名的拼写(包括大小写)要和题目完全一致。
2、输入变量直接赋值即可,无需使用“询问并等待”积木块。