一亩三分地论坛

 找回密码
 获取更多干货,去instant注册!

扫码关注一亩三分地公众号
查看: 1602|回复: 2
收起左侧

[其他] 15行搞定leetcode难题max points on a line

[复制链接] |试试Instant~ |关注本帖
Linzertorte 发表于 2014-5-15 05:06:29 | 显示全部楼层 |阅读模式

2014(1-3月)-[12]CS硕士+fresh grad 无实习/全职 - Other| 码农类其他@

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干货,去instant注册!

x

评分

2

查看全部评分

writecoffee1 发表于 2014-6-14 12:58:42 | 显示全部楼层
Java 20 ~ 23 行也可以搞定了, hahahahahahahahahaha
  1. public int maxPoints(Point[] points) {
  2.     int n = points.length;
  3.     int gMax = 0;. 1point3acres.com/bbs

  4.     for (int i = 0; i < n; i++) {
  5.         HashMap<Double, Integer> h = new HashMap<Double, Integer>();-google 1point3acres
  6.         int lMax = 1, dup = 0;. 鍥磋鎴戜滑@1point 3 acres
  7. . Waral 鍗氬鏈夋洿澶氭枃绔,
  8.         for (int j = i + 1; j < n; j++) {
  9.             if (points[j].x == points[i].x && points[j].y == points[i].y) {
  10.                 dup++;
  11.             } else {
  12.                 double dx = points[j].x - points[i].x, dy = points[j].y - points[i].y;
  13.                 double slope = dx == 0.0 ? Integer.MAX_VALUE : 0.0 + dy / dx;
  14. . more info on 1point3acres.com
  15.                 if (!h.containsKey(slope)) {
  16.                     h.put(slope, 1);.鐣欏璁哄潧-涓浜-涓夊垎鍦
  17.                 }

  18.                 lMax = Math.max(lMax, h.put(slope, h.get(slope) + 1) + 1);.鐣欏璁哄潧-涓浜-涓夊垎鍦
  19.             }
  20.         }. more info on 1point3acres.com

  21.         gMax = Math.max(lMax + dup, gMax);. 鍥磋鎴戜滑@1point 3 acres
  22.     }

  23.     return gMax;
  24. }
复制代码
回复 支持 1 反对 0

使用道具 举报

 楼主| Linzertorte 发表于 2014-5-15 05:07:01 | 显示全部楼层
  1. # Definition for a point. 鍥磋鎴戜滑@1point 3 acres
  2. # class Point:
  3. #     def __init__(self, a=0, b=0):
  4. #         self.x = a
  5. #         self.y = b

  6. class Solution:
  7.     # @param points, a list of Points
  8.     # @return an integer-google 1point3acres
  9.     def maxPoints(self, points):
  10.         best = 0-google 1point3acres
  11.         for p in points:. more info on 1point3acres.com
  12.             angle_cnt=dict()
  13.             same = 0
  14.             lm = 0. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴
  15.             for q in points:
  16.                 angle=math.atan2(p.y-q.y,p.x-q.x).鐣欏璁哄潧-涓浜-涓夊垎鍦
  17.                 if p.x==q.x and p.y==q.y:
  18.                     same += 1. from: 1point3acres.com/bbs
  19.                 else:
  20.                     angle_cnt[angle] = angle_cnt[angle]+1 if angle in angle_cnt else 1
  21.                     lm=max(lm,angle_cnt[angle])
  22.             best=max(best,same+lm). more info on 1point3acres.com
  23.         return best
复制代码
一亩三分地严打"顶""好贴""收藏了"之类的垃圾回复帖!被警告三次,系统会自动封杀ID!. 1point 3acres 璁哄潧

想支持楼主,请点击帖子下方的"好苗""分享""收藏"键,酌情给楼主加大米(系统不扣你自己的分)。
积分不够看不了帖子,请参考论坛导航里的"帮助","新手提纲"里有攒积分指南
回复 支持 1 反对 0

使用道具 举报

本版积分规则

请点这里访问我们的新网站:一亩三分地Instant.

Instant搜索更强大,不扣积分,内容组织的更好更整洁!目前仍在beta版本,努力完善中!反馈请点这里

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2016-12-10 03:41

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表