首页 > 其他分享 >149. 直线上最多的点数

149. 直线上最多的点数

时间:2024-10-23 17:47:54浏览次数:3  
标签:tmp 直线 int max 149 ++ length points 点数

给你一个数组 points ,其中 points[i] = [xi, yi] 表示 X-Y 平面上的一个点。求最多有多少个点在同一条直线上。

 

示例 1:

输入:points = [[1,1],[2,2],[3,3]]
输出:3

示例 2:

输入:points = [[1,1],[3,2],[5,3],[4,1],[2,3],[1,4]]
输出:4

 

提示:

  • 1 <= points.length <= 300
  • points[i].length == 2
  • -104 <= xi, yi <= 104
  • points 中的所有点 互不相同



class Solution {
public int maxPoints(int[][] points) {
        int max = 1;
        for (int i = 0; i < points.length; i++) {
            for (int j = i + 1; j < points.length; j++) {
                int tmp = 2;
                int[] A = points[i];
                int[] B = points[j];
                int vx1 = B[0] - A[0];
                int vy1 = B[1] - A[1];
                for (int k = j + 1; k < points.length; k++) {
                    int[] C = points[k];
                    int vx2 = C[0] - A[0];
                    int vy2 = C[1] - A[1];
                    if (vx1 * vy2 == vx2 * vy1) {
                        tmp++;
                    }
                }
                max = Math.max(tmp,max);
            }
        }
        return max;
    }
}

标签:tmp,直线,int,max,149,++,length,points,点数
From: https://blog.51cto.com/u_16040716/12341017

相关文章

  • 【25届计算机毕设选题推荐】基于python的重庆旅游景点数据分析系统的设计与实现 【附
    ✍✍计算机毕设编程指导师**⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流!⚡⚡Java、Python、小程序、大数据实战项目集⚡⚡文末获取......
  • [1490]基于JAVA的房屋拆迁智慧管理系统的设计与实现
    毕业设计(论文)开题报告表姓名学院专业班级题目基于JAVA的房屋拆迁智慧管理系统的设计与实现指导老师(一)选题的背景和意义开题报告背景与意义:在当前城市化进程加速推进的背景下,房屋拆迁管理工作面临着前所未有的挑战和复杂性。传统的房屋拆迁管理方式由于信息传递效率低......
  • ultralytics yolo 训练及推理自定义人脸关键点数据 - python 实现
            Ultralytics YOLO 是计算机视觉和ML领域专业人士的高效工具。    深度学习的关键点任务也是基础和常见任务,所以这里进行基于ultralyticsyolo自定义关键点数据集的模型训练和模型推理。    根据需求,可能会发布其webui版本,现在已经发布......
  • 直线与圆的最值问题(高二)
    专题:直线+圆\(\qquad\qquad\)题型:最值问题\(\qquad\qquad\)难度系数:★★★ 题目已知\(P\)为圆\(C:x^2+y^2=1\)上的动点,直线\(l_1:kx-y-3k=0\)恒过定点\(A\),\(Q\)为直线\(l_2:x-y+3=0\)上的动点,则\(|PA|+3|PQ|\)的最小值为\(\underline{\quad\quad}\).  思考痕......
  • 深入理解浮点数的运算
    浮点数的运算步骤浮点数的加减运算一般由以下五个步骤完成:对阶、尾数运算、规格化、舍入处理、溢出判断所谓对阶是指将两个进行运算的浮点数的阶码对齐的操作。对阶的目的是为使两个浮点数的尾数能够进行加减运算。因为,当进行$M_{x}\times2^{E_{x}}$与$M_{y}\times2^{E......
  • 深入理解浮点数的表示
    浮点数的表示通常,浮点数表示为:\[N=(-1)^{S}\timesM\timesR^{E}\]其中,S取值为0或者1,用来决定浮点数的符号;M是一个二进制定点小数,称为尾数,一般用定点原码小数表示;E是一个二进制顶点整数,称为阶码或者指数,用移码表示。R是基数(隐含),可以约定为2、4、16等浮点数的表示范围......
  • 简单且实用!个微自动回复设置让效率直线上升!
    在这个快节奏的时代,微信自动回复设置真的太重要了!通过个微管理系统,不仅能自动通过好友请求,还能事半功倍地与新朋友互动哦!1、自动通过好友请求只要你设定好规则,新的好友请求系统会自动处理,再也不用手动去点了,简直太省心!2、通过好友自动回复当好友通过请求验证后,系统会自动......
  • 【25届计算机毕设选题推荐】基于Python的黑龙江旅游景点数据分析系统的设计与实现 【
    ✍✍计算机编程指导师⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流!⚡⚡Java实战|SpringBoot/SSMPython实战项目|Django微信小程......
  • Stanford CS149 -- Assignment 3: A Simple CUDA Renderer
    作业描述及代码参见:CS149-asst3实验环境:WSL2;GeForceMX350;Cuda12.6第一部分:CUDA热身练习1:SAXPY实验结果:相比基于CPU的实现,性能明显下降。这是由于SAXPY属于I/O密集型任务,计算量较小,主要的时间耗费在数据的转移。第二部分:CUDA热身练习2:并行前缀和第三部分:简单......
  • Stanford CS149 -- Assignment 4: NanoGPT149
    作业描述及代码参见:cs149gptWarm-Up:访问张量张量/数组都是按行存储的,四维数组可以看作元素为三维数组的数组,元素大小即为三维数组内元素总数,以此类推。第1部分:简单(但不太高效)的注意力机制实现主要实现两个矩阵乘法和一个softmax运算。第2部分:块矩阵乘法和UnfusedSof......