Tema:
Hay algunos puntos en un sistema de coordenadas XY. Usamos las coordenadas de la matriz para registrar sus coordenadas por separado, donde coordenadas [i] = [x, y] representan el punto con la abscisa como x y la ordenada como y.
Juzgue si estos puntos están en la misma línea recta en el sistema de coordenadas. Si es así, devuelva verdadero, de lo contrario, devuelva falso.
Ejemplo 1:
Entrada: coordenadas = [[1,2], [2,3], [3,4], [4,5], [5,6], [6,7]]
Salida: verdadero
Ejemplo 2:
Entrada: coordenadas = [[1,1], [2,2], [3,4], [4,5], [5,6], [7,7]]
Salida: falso
Código:
class Solution {
public:
bool checkStraightLine(vector<vector<int>>& coordinates) {
int n = coordinates.size();
for(int i=1;i<coordinates.size()-1;++i){
if((coordinates[i][0] - coordinates[0][0])*(coordinates[i][1] - coordinates[n-1][1])
!=
(coordinates[i][1] - coordinates[0][1])*(coordinates[i][0] - coordinates[n-1][0]))
return false;
}
return true;
}
};