Module: Geometri


Problem

3 /7


Lazy Vasya dan keluaran Half-Life 3

Theory Click to read/hide

Barisan boleh ditakrifkan dalam 5 cara berbeza:
1) persamaan \( y = kx + b\); persamaan pertama garis lurus yang diajar di sekolah adalah mudah untuk membina dan mengira secara manual, tetapi penggunaannya dalam program sangat menyusahkan;
2) dengan 2 mata terletak di atasnya - sebenarnya agak mudah, tetapi mempunyai aplikasi yang agak sempit;
3) dengan vektor normal garis lurus dan titik - vektor normal ke garis lurus ialah vektor yang berserenjang dengannya, lebih lanjut mengenainya di bawah;
4) di sepanjang vektor arah garis lurus dan titik - vektor arah ialah vektor yang terletak pada garis lurus dan berserenjang dengan vektor normal (logik), kira-kira di bawah;
5) persamaan garis lurus \(ax + by + c = 0\); persamaan klasik garis lurus, dalam kebanyakan kes yang paling universal. Sekarang tentang dia.

Koordinat vektor biasa bagi garisan sedemikian: \((a; b)\) atau \( (-a; -b)\).

Koordinat vektor arah garis sedemikian: \((-b; a)\) atau \ ((b; -a)\).

Garis adalah selari jika:
\({a1 \over b1} = {a2 \over b2}\).

Jarak dari titik ke garis (berhati-hati: jarak boleh menjadi negatif, semuanya bergantung pada sisi garis mana titik itu terletak):
\({(a \cdot x_1 + b \cdot y_1 + c) \over \sqrt{a^2 + b^2}}\),
dengan x1, y1 ialah koordinat titik.

Membina garis daripada vektor biasa dan titik, atau vektor arah dan titik, turun untuk membina garisan daripada 2 titik, jadi mari kita lihat (ia juga yang paling biasa digunakan ).< /p>

Jika x1, y1, x 2, y2 - koordinat titik pertama dan kedua masing-masing, kemudian

\(a = y_1 - y_2\)

\(b = x_2 - x_1\)

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

Problem

Keajaiban berlaku! Half-Life 3 yang telah lama ditunggu-tunggu, yang diimpikan oleh jutaan orang di seluruh dunia, akhirnya keluar! Vasya juga menantikan kesinambungan siri legenda, dan tidak makan di kafetaria sekolah selama sebulan penuh, supaya dia mempunyai cukup untuk membeli karya ini! Satu-satunya masalah yang menghalangnya ialah tugasan kerja rumah algebra yang besar. Di dalam kelas, dia melalui topik baharu - garis lurus, dan kini dia perlu melakukan sebanyak N tugasan untuk membina garis lurus melalui 2 mata. Tetapi anda benar-benar mahu bermain, dan keesokan harinya beritahu rakan anda betapa hebatnya grafik yang ada ... Oleh itu, dia meminta anda, rakannya, untuk membantunya.
 
Input
Baris pertama mengandungi koordinat titik pertama (X1, Y1), ( \(-50 <= X_1, Y_1 <= 50\)).
Baris kedua mengandungi koordinat titik kedua (X2, Y2), ( \(-50 <= X_2, Y_2 <= 50\)).
 
Output
Pada satu baris cetak 3 integer berturut-turut: pekali a, b, c bagi persamaan garis lurus.
 
Nota: jika tugas anda tidak berjaya, tetapi anda pasti semuanya betul, cuba darab semua pekali dengan -1. Tugasan menganggap bahawa anda telah menggunakan formula yang diambil daripada kuliah/teori.

 

Contoh
# Input Output
1
-1 -1
1 1
-2 2 0