第42888题 程序题
数组清零

图片 图片

【题目描述】

小杨有一个装着数字的小篮子(列表),里面放着n个非负数字(比如[2, 3, 4],$1 \le n \le 20$)。他的任务是通过一系列"魔法操作",把篮子里所有数字都变成0。

每次操作需要按照以下步骤进行:

  1. 找最大的数字:在篮子里找到最大的数字。如果有多个相同的最大值,选位置最后面的那个(比如从上往下数,选最下边的)。
  2. 找最小的非零数字:在篮子里所有还不是零的数字中,找到最小的那个。
  3. 施展魔法:把第一步找到的最大数字,替换为该数字减去第二步找到的最小数字。

默认小猫角色,白色背景,请你帮助小杨计算出一共需要多少次这样的"魔法操作",才能让所有数字都变成0。

举个例子:

[2, 3, 4] →[2, 3, 2] →[2, 1, 2] →[2, 1, 1] →[1, 1, 1] →[1, 1, 0] →[1, 0, 0] →[0, 0, 0] 一共7次。

【输入描述】

新建列表“data”,用于存储篮子中的数据。

如下如图所示:

图片

【输出描述】

新建变量“ans”,用于存储最后的结果。

如下如图所示:

图片

【样例1】

输入:

data = [2, 3, 4]

输出:

ans = 7

【样例2】

输入:

data = [1, 3, 2, 2, 5]

输出:

ans = 13

【注意事项】

  1. 变量名的拼写(包括大小写)要和题目完全一致。
  2. 输出结果存放在对应变量中即可,无需使用“说…”或“说…,2秒”积木块
  3. 列表直接用“+”功能赋值进行测试即可,无需写代码赋值。

图片

{{ option.label }}
子题{{ index + 1 }} {{ child.type_label }}
{{ option.label }}
✓ 正确 ◐ 部分正确 ✗ 错误
编辑模式
程序运行统计
暂无判题统计
知识点:
提交{{ questionInfo.stats ? questionInfo.stats.submit_count : 0 }}次 正确率{{ statsAccuracy }}%
答案解析