Python|坐标最短路径计算

简介: Python|坐标最短路径计算

问题描述

平面上有 n 个点,点的位置用整数坐标表示 points[i] = [xi, yi]。请你计算访问所有这些点需要的最小时间(以秒为单位)。你可以按照下面的规则在平面上移动:

每一秒沿水平或者竖直方向移动一个单位长度,或者跨过对角线(可以看作在一秒内向水平和竖直方向各移动一个单位长度)。必须按照数组中出现的顺序来访问这些点。

示例 1:

输入:points = [[1,1],[3,4],[-1,0]]

输出:7

解决方案

首先我们需要知道在坐标轴上进行移动的话,一点到对角线路径为二,且横纵坐标分别减少或者增加1。

然后然后我们将横纵坐标分别取开进行计算,然后选购其中大的那个为我们需要进行下一步处理的数据,存放在一个列表中。因为存在该列表中的数据都是单步需要的距离,最后我们就将存在列表中的数据求和,就得到第一个到最后一个坐标的距离,从而得到结果。

Python代码

class Solution:

     def minTimeToVisitAllPoints(points):

         list = []

         z = len(points)

         num = 0

         for i in range(z-1):

            x =  abs(points[i][0]-points[i+1][0])

            y =  abs(points[i][1]-points[i+1][1])

            if x>=y:

                list.append(x)

            else:

                list.append(y)

         for n in list:

            num = num+n

         return num

     print(minTimeToVisitAllPoints([[1,1],[3,4],[-1,0]]))


结语

在图像表格题中,我们要善于去画图解决问题,在图像中找到其中的规律,这样才会让我们看到题目时思路清晰。

目录
相关文章
|
3月前
|
Python
【10月更文挑战第10天】「Mac上学Python 19」小学奥数篇5 - 圆和矩形的面积计算
本篇将通过 Python 和 Cangjie 双语解决简单的几何问题:计算圆的面积和矩形的面积。通过这道题,学生将掌握如何使用公式解决几何问题,并学会用编程实现数学公式。
172 60
|
29天前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
49 18
|
1月前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
40 7
|
2月前
|
机器学习/深度学习 算法 编译器
Python程序到计算图一键转化,详解清华开源深度学习编译器MagPy
【10月更文挑战第26天】MagPy是一款由清华大学研发的开源深度学习编译器,可将Python程序一键转化为计算图,简化模型构建和优化过程。它支持多种深度学习框架,具备自动化、灵活性、优化性能好和易于扩展等特点,适用于模型构建、迁移、部署及教学研究。尽管MagPy具有诸多优势,但在算子支持、优化策略等方面仍面临挑战。
91 3
|
3月前
|
Python
【10月更文挑战第15天】「Mac上学Python 26」小学奥数篇12 - 图形变换与坐标计算
本篇将通过 Python 和 Cangjie 双语实现图形变换与坐标计算。这个题目帮助学生理解平面几何中的旋转、平移和对称变换,并学会用编程实现坐标变化。
71 1
|
3月前
|
机器学习/深度学习 移动开发 Python
【10月更文挑战第11天】「Mac上学Python 22」小学奥数篇8 - 排列组合计算
本篇将通过 Python 和 Cangjie 双语讲解如何计算排列与组合。这道题目旨在让学生学会使用排列组合公式解决实际问题,并加深对数学知识和编程逻辑的理解。
73 4
|
3月前
|
数据可视化 Python
【10月更文挑战第12天】「Mac上学Python 23」小学奥数篇9 - 基础概率计算
本篇将通过 Python 和 Cangjie 双语实现基础概率的计算,帮助学生学习如何解决简单的概率问题,并培养逻辑推理和编程思维。
59 1
|
3月前
|
Python
使用python计算两个日期之前的相差天数,周数
使用python计算两个日期之前的相差天数,周数
54 0
|
3月前
|
索引 Python
Excel学习笔记(一):python读写excel,并完成计算平均成绩、成绩等级划分、每个同学分数大于70的次数、找最优成绩
这篇文章是关于如何使用Python读取Excel文件中的学生成绩数据,并进行计算平均成绩、成绩等级划分、统计分数大于70的次数以及找出最优成绩等操作的教程。
114 0
|
3月前
|
机器学习/深度学习 算法 数据挖掘
Python 中的计算与应用
Python 中的计算与应用
38 0