守望_sy 2021-12-12 18:27 采纳率: 63.2%
浏览 163
已结题

怎么用python实现这个问题

数字游戏
时间限制:2 s
内存限制:256 MB
给定一个序列n 正数 a1, a2, ……, an. 只要有不同的数字,就执行以下操作:选择一个最大的数字并从中减去最小的数字。 将执行多少操作?输入输入的第一行包含数字n(1 <n<1000)。下一行包含个数字 ai (1 < ai < 10^9)。输出打印一个数字,操作的次数。
例子
标准输入
2
1 1
标准输出
0
标准输入
3
9 6 3
标准输出
3
标准输入
6
1000000000 1000000000 1000000000 1000000000 1000000000 1
标准输出
4999999995

  • 写回答

4条回答 默认 最新

  • 关注

    你题目的解答代码如下:

    n = int(input())
    a = list(map(int,input().split()))
    count = 0
    while True:
        maxv = max(a)
        minv = min(a)
        if maxv==minv:
            break
        if maxv % minv==0:
            count += maxv//minv-1
            a[a.index(maxv)] = minv
        else:
            count += maxv//minv
            a[a.index(maxv)] = maxv % minv
    
    print(count)
    
    

    如有帮助,望采纳!谢谢!

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月15日
  • 修改了问题 12月12日
  • 赞助了问题酬金 12月12日
  • 创建了问题 12月12日