LC149 - 多少个点位于同一条直线上

多少个点位于同一直线

http://www.nowcoder.com/questionTerminal/bfc691e0100441cdb8ec153f32540be2

前2个for确定斜率
第3个for统计等于斜率的点数

import java.util.*;

/*
 * public class Point {
 *   int x;
 *   int y;
 * }
 */

public class Solution {
    /**
     * 
     * @param points Point类一维数组 
     * @return int整型
     */
    public int maxPoints (Point[] points){
        // write code here
        if(points == null|| points.length == 0){
            return 0;
        }
        if(points.length == 1 || points.length == 2){
            return points.length;
        }
        int res = 0;
        for(int i = 0 ; i < points.length - 1; ++i){
            int a = points[i].x;
            int b = points[i].y;
            for(int j = i + 1; j < points.length; ++j){
                int aa = points[j].x - a;
                int bb = points[j].y - b;
                int count = 0;
                if(aa == 0 && bb == 0){
                    for(int k = 0; k < points.length; ++k){
                        if(points[k].x == a && points[k].y == b){
                            count++;
                        }
                    }
                }else{
                    for(int k = 0; k < points.length; ++k){
                        if((points[k].x - a)*bb == (points[k].y - b) * aa){
                            count++;
                        }
                    }
                }
                res = Math.max(res, count);
            }
        }
        return res;
    }
}
全部评论

相关推荐

兄弟们你们进大厂靠的是什么项目啊
DOTPHTP:课设改。其实项目什么的如果不是实习里面的生产项目的话,建议✍️那种自己想要做的。突出个人自驱力,而不是为了找工作不得不随波逐流这种
点赞 评论 收藏
分享
24分钟1.自我介绍2.黑盒测试用例设计方法3.运用刚才的测试方法对手机端淘宝购物车结算页面进行测试4.测试流程5.需求文档没有标明边界值,怎么确定边界值,确定边界值后怎么测6.你们公司自动化测试是测业务主流程还是新需求反问:不足之处答:问答问题前思考3s再答,针对提问再答
一笑而过2222:边:边界值分析法(处理输入边界) 类:等价类划分法(划分有效 / 无效输入) 定:判定表法(多条件组合的逻辑判定) 因:因果图法(分析输入输出的因果关系) 迁:状态迁移法(覆盖系统状态转换路径) 场:场景法(模拟端到端业务流程) 正:正交试验法(多因素组合的测试优化) 错:错误推测法(基于经验推测潜在漏洞) 记忆逻辑链(按测试场景优先级排序) 先处理明确输入:边界值 + 等价类(边类) 再处理条件组合:判定表 + 因果图(定因) 接着处理状态与流程:状态迁移 + 场景法(迁场) 最后优化多因素与补漏:正交试验 + 错误推测(正错)
查看6道真题和解析
点赞 评论 收藏
分享
震撼沃玛一整年:查看图片
点赞 评论 收藏
分享
炫哥_:哥们项目描述里面vector和mysql之类的都要写吗,直接开头技术栈巴拉巴拉就行了,完全不是技术点啊
点赞 评论 收藏
分享
评论
4
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务