ABC248E题解

题面

赛时 WA/TLE 共计七次。

题意:平面内有 \(N\) 个点,问总计有多少条经过至少 \(K\) 个点的直线。
\(N\leq300\)


首先 \(k=1\) 明显答案是 Infinity
否则我做出任意两个点确定的直线解析式。排序后我就知道每一条线出现了几次。那么它所经过的点数就是满足 \(X\times(X-1)=T\times2\)。这样就做完了。时间复杂度 \(O(n^2\log n^2)\)

实现时注意直线的参数约分等细节。并且注意 \(X-Y+1=0\)\(-X+Y-1=0\) 两个其实是一条直线,需要强制将某个数转成整数以防止错误计算。

Code

posted @ 2022-06-28 21:49  1358id  阅读(28)  评论(0编辑  收藏  举报