結果
問題 | No.1041 直線大学 |
ユーザー | maspy |
提出日時 | 2020-05-01 22:14:31 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 617 ms / 2,000 ms |
コード長 | 524 bytes |
コンパイル時間 | 408 ms |
コンパイル使用メモリ | 12,416 KB |
実行使用メモリ | 52,404 KB |
最終ジャッジ日時 | 2024-11-16 07:56:46 |
合計ジャッジ時間 | 25,730 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 37 |
ソースコード
import sys import numpy as np read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines N = int(readline()) XY = np.array(read().split(), np.int32) X = XY[::2] Y = XY[1::2] a = np.subtract.outer(Y, Y) b = -np.subtract.outer(X, X) c = a * X + b * Y a = a.ravel() b = b.ravel() c = c.ravel() ind = ~((a == 0) & (b == 0)) a = a[ind] b = b[ind] c = c[ind] on_line = np.multiply.outer(a, X) + np.multiply.outer(b, Y) - c[:,None] == 0 cnt = on_line.sum(axis=1) print(cnt.max())