Module: Geometria


Problem

3 /7


Lazy Vasya e l'uscita di Half-Life 3

Theory Click to read/hide

La linea può essere definita in 5 modi diversi:
1) equazione \( y = kx + b\); la primissima equazione di una retta insegnata a scuola è comoda per costruire e calcolare manualmente, ma il suo utilizzo in un programma è molto scomodo;
2) di 2 punti sdraiati su di esso - in realtà abbastanza conveniente, ma ha un'applicazione piuttosto ristretta;
3) dal vettore normale di una linea retta e di un punto - il vettore normale a una linea retta è un vettore perpendicolare ad essa, ne parleremo più avanti;
4) lungo il vettore di direzione della linea retta e del punto - il vettore di direzione è un vettore che giace sulla linea retta e perpendicolare al vettore normale (beh, logico), su di esso sotto;
5) equazione di una retta \(ax + by + c = 0\); la classica equazione di una retta, nella maggior parte dei casi la più universale. Ora su di lui.

Coordinate del vettore normale di tale linea: \((a; b)\) o \( (-a; -b)\).

Coordinate del vettore di direzione di tale linea: \((-b; a)\) o \ ((b; -a)\).

Le rette sono parallele if:
\({a1 \over b1} = {a2 \over b2}\).

Distanza da un punto a una linea (attenzione: la distanza può essere negativa, tutto dipende da quale lato della linea si trova il punto):
\({(a \cdot x_1 + b \cdot y_1 + c) \over \sqrt{a^2 + b^2}}\),
dove x1, y1 sono le coordinate del punto.

Costruire una linea da un vettore normale e un punto, o un vettore di direzione e un punto, si riduce a costruire una linea da 2 punti, quindi diamo un'occhiata (è anche il più comunemente usato ).< /p>

Se x1, y1, x 2, y2 - coordinate rispettivamente del primo e del secondo punto, quindi

\(a = y_1 - y_2\)

\(b = x_2 - x_1\)

\(c = x_1 \cdot y_2 - x_2 \cdot y_1\)

Problem

È successo un miracolo! Il tanto atteso Half-Life 3, sognato da milioni di persone in tutto il mondo, è finalmente uscito! Anche Vasya non vedeva l'ora che continuasse la serie leggendaria, e per un mese intero non ha nemmeno mangiato alla mensa della scuola, così avrebbe avuto abbastanza per comprare questo capolavoro! L'unico problema che si frappone è un enorme compito di algebra. In classe, ha discusso un nuovo argomento: le linee rette, e ora deve svolgere fino a N attività sulla costruzione di una linea retta attraverso 2 punti. Ma vuoi davvero giocare, e il giorno dopo dì ai tuoi amici che bella grafica c'è... Pertanto, ha chiesto a te, suo amico, di aiutarlo.
 
Input
La prima riga contiene le coordinate del primo punto (X1, Y1), ( \(-50 <= X_1, Y_1 <= 50\)).
La seconda riga contiene le coordinate del secondo punto (X2, Y2), ( \(-50 <= X_2, Y_2 <= 50\)).
 
Uscita
Su una singola riga stampa 3 interi consecutivi: i coefficienti a, b, c dell'equazione di una retta.
 
Nota: se il tuo compito non funziona, ma sei sicuro che tutto sia corretto, prova a moltiplicare tutti i coefficienti per -1. L'attività presuppone che tu abbia utilizzato formule tratte dalla lezione/teoria.

 

Esempi
# Input Uscita
1
-1 -1
1 1
-2 2 0