当前位置: 首页 > article >正文

278.缀点成线

 1232. 缀点成线 - 力扣(LeetCode)

class Solution {
    public boolean checkStraightLine(int[][] coordinates) {
        if(coordinates.length==2){
            return true;
        }
        int x=coordinates[1][0]-coordinates[0][0];
        int y=coordinates[1][1]-coordinates[0][1];
        for(int i=1;i<coordinates.length;i++){
            if((coordinates[i][0]-coordinates[i-1][0])*y!=(coordinates[i][1]-coordinates[i-1][1])*x){
                return false;
            }
        }
        return true;
    }
}
class Solution:
    def checkStraightLine(self, coordinates):
        if len(coordinates) == 2:
            return True
        
        # 计算前两个点的差值
        x = coordinates[1][0] - coordinates[0][0]
        y = coordinates[1][1] - coordinates[0][1]
        
        # 遍历所有点,检查斜率是否一致
        for i in range(1, len(coordinates)):
            dx = coordinates[i][0] - coordinates[i - 1][0]
            dy = coordinates[i][1] - coordinates[i - 1][1]
            if dx * y != dy * x:  # 检查斜率是否相等
                return False
        
        return True


http://www.kler.cn/a/597229.html

相关文章:

  • Python助力区块链互通——跨链桥接的实现与实践
  • 【FPGA】DE2-115实现LED流水灯与VScode的安装与使用
  • 【ARM】PK51如何添加芯片型号的方法
  • vue3:watch和watchEffect
  • 为什么从另一个电脑复制项目文件过来后,QT 在自己电脑上登录界面登不上,Shadow build 被选中原因
  • 红蓝队自动化项目资产侦察武器库部署企查产权网络空间
  • MCP可能会引入新的数据传输方式:[RFC] 使用新的“可流式传输的 HTTP”传输方式取代 HTTP+SSE
  • CUDA 学习(1)——GPU 架构
  • docker安装milvus向量数据库Attu可视化界面
  • HarmonyOS NEXT 组件状态管理的对比
  • 如何使用jenv工具管理多个JDK版本
  • 若依(RuoYi)框架新手使用指南
  • 【软件工程】09_软件实现、测试和维护
  • ES集群安装(保姆级教学:两台虚拟机集群)
  • 【搜索】dfs(回溯、剪枝、记忆化)
  • 移动笔试丨中国移动笔试2025届笔试考什么?运营商春招攻略、考点技巧|附真题秘籍、题型介绍、面试攻略、求职建议
  • ‘闭包‘, ‘装饰器‘及其应用场景
  • Android卷笔试题目总结
  • 嵌入式基础知识学习:SPI通信协议是什么?
  • Maven 简单了解