python - 查找更改整数以匹配列表中其他人的最小移动次数
问题描述
我对编码非常陌生,作为训练营应用程序的一部分,我遇到了一个问题,我整天都在研究,但我很难过。它也是定时的,我只剩下大约 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
解决方案
如果您的意思是列表中的相同索引数字,您可以试试这个:
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
希望对您有所帮助,如果您还有其他问题,请发表评论。:)
推荐阅读
- php - Flush 和 ob_flush 在 fastcgi php 中不起作用
- list - 如何简化可变列表中可变列表的分配
- python - Requests.get() 卡在连接上
- javascript - 页面加载后密码管理器如何运行 JS?
- python - Python - 使用 pandas 数据框时,Matplotlib 绘制不正确的图形
- python - 如何从python中的时间列中删除一个时间点到另一个时间点的时间戳
- java - 不能将泛型数组直接分配给局部变量
- android - 检测 Recycler 视图中显示的项目
- css - margin-left 在 Firefox 中不起作用
- ext.net - 在 Ext.Net 中获取生成的商店 ID