首页 > 解决方案 > 查找更改整数以匹配列表中其他人的最小移动次数

问题描述

我对编码非常陌生,作为训练营应用程序的一部分,我遇到了一个问题,我整天都在研究,但我很难过。它也是定时的,我只剩下大约 12 个小时了。我必须取两个整数并将它们与第二对整数匹配,方法是向上或向下移动每个数字,然后加上我这样做所需的最小移动次数,这将是最终答案。这是我第一次在 CSS 之外使用任何类型的编程语言,所以请多多包涵。示例如下:

“安德里亚和玛丽亚每个人都有一个整数数组。安德里亚想改变她的数组以匹配玛丽亚的数组。对于她数组的每个元素,sha可以一次增加或减少一个项目中的数字。安德里亚需要多少次移动匹配 Marias 数组。

完成函数 minimumMoves

minimumMoves 具有以下参数:a[a[0],...a[n-1]]: m[m[0],...m[n-1]]:

我迷路了,我真的需要有人为我指明正确的方向。请帮忙!!!

我用谷歌搜索和搜索,但我无法理解它,如何从整数中挑选出每个数字并遍历每个数字,而无需为每个数字编写新的代码行。

#!/bin/python3

import math
import os
import random
import re
import sys



#
# Complete the 'minimumMoves' function below.
#
# The function is expected to return an INTEGER.
# The function accepts following parameters:
#  1. INTEGER_ARRAY a
#  2. INTEGER_ARRAY m
#

def minimumMoves(a, m):
    # Write your code here
    a = [4321, 3211]
    m = [5432, 4302]
    total=0
        if a[0] <= b[0]
           a[0] += 1
        else if a[0] >= b[0]
            a[0] += 1

标签: pythonloops

解决方案


如果您的意思是列表中的相同索引数字,您可以试试这个:

def minimumMoves(a, m):
    # Write your code here
    a = [4321, 3211]
    m = [5432, 4302]
    total = 0
    # iterate the array of a and m together
    for i, j in zip(a, m):
        # means how many steps to turn i into j
        total += abs(i - j)
    return total

希望对您有所帮助,如果您还有其他问题,请发表评论。:)


推荐阅读