具体思想:
直接向量叉乘就可以,自己还判断了三条斜率;
具体代码:
class Solution {
public:
bool isBoomerang(vector<vector<int>>& points) {
double x1=points[0][0],x2=points[1][0],x3=points[2][0];
double y1=points[0][1],y2=points[1][1],y3=points[2][1];
double k1=x2-x1==0?INT_MAX:(y2-y1)/(x2-x1);
double k2=x3-x1==0?INT_MAX:(y3-y1)/(x3-x1);
double k3=x3-x2==0?INT_MAX:(y3-y2)/(x3-x2);
if(k1!=k2&&k2!=k3&&k1!=k3)
return true;
return false;
}
};
class Solution {
public:
bool isBoomerang(vector<vector<int>>& points) {
vector<int> v1 = {points[1][0] - points[0][0], points[1][1] - points[0][1]};
vector<int> v2 = {points[2][0] - points[0][0], points[2][1] - points[0][1]};
return v1[0] * v2[1] - v1[1] * v2[0] != 0;
}
};