题解
昨天的题太难了,加上一些突发情况,所以咕咕咕了
什么并查集+逆向思维(打砖块)有空再补,hhh估计不会补了,补了也不会。。。
今天的题水题,就是看各个斜率是否一样,注意计算斜率是否相等时,把除法改成了乘法,以避免精度损失。
代码如下
class Solution {
public:
bool checkStraightLine(vector<vector<int>>& coordinates) {
int n = coordinates.size();
for(int i = 2; i < n; i++){
if((coordinates[1][1] - coordinates[0][1])*(coordinates[i][0] - coordinates[0][0])!=(coordinates[i][1] - coordinates[0][1])*(coordinates[1][0] - coordinates[0][0])){
return false;
}
}
return true;
}
};
直线检测算法解析
本文介绍了一种用于检测坐标点是否位于同一直线上的算法。通过比较各点间斜率的一致性来判断,为避免浮点数运算带来的精度误差,采用乘法替代除法进行计算。
402

被折叠的 条评论
为什么被折叠?



