【JAVA练习】力扣1232.缀点成线

题目:

解题思路:

直线上面的点满足公式:

如果所有点在一条直线上,即任意两点的斜率相同,由于计算斜率存在精度的问题,可以将除法等价于乘法。

等价于

java 复制代码
class Solution {
    public boolean checkStraightLine(int[][] coordinates) {
        int x = coordinates[0][0] - coordinates[1][0];
        int y = coordinates[0][1] - coordinates[1][1];

        for (int i = 1; i < coordinates.length-1; i++) {
            int new_x = coordinates[i][0] - coordinates[i+1][0];
            int new_y = coordinates[i][1] - coordinates[i+1][1];
            if (new_y * x != new_x * y) {
                return false;
            }
        }
        return true;
    }
}
// ny / nx = y / x
相关推荐
2601_9619017028 分钟前
SpringBoot使用Nacos进行application.yml配置管理
java·spring boot·spring
en.en..36 分钟前
C语言 标准输入 / 输出缓冲区
算法
何以解忧,唯有..1 小时前
LangChain 工具调用(Tool Calling)实战指南
java·前端·langchain
QQ_21696290962 小时前
【源码编号:project79475】SpringBoot校内二手交易平台:商品发布、分类检索、留言交流、订单管理全流程实战
java·spring boot·后端
吃好睡好便好2 小时前
查找函数的使用
学习·算法·matlab·生活·查找函数
学习星球2 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
前端 贾公子3 小时前
第09章:上下文与记忆 (2)
java·服务器·前端
2601_962203513 小时前
Java进阶07集合(续)
java·开发语言
郑州光合科技余经理3 小时前
本地生活服务系统:模块边界与结算字段怎么拆
java·开发语言·前端·后端·系统架构·uni-app·php
roman_日积跬步-终至千里3 小时前
【数据治理(6)】DataOps 不是调度工具,而是让数据产品长期可信的运行机制
java·服务器·网络