Siema, dostałem zadanko i zauważyłem, że po prostu trzeba sprawdzić, czy wszystkie punkty są współliniowe. Niestety program nie przechodzi 3 testów, które sprawiają, że program ten otrzymuje 0% w końcowej ocenie. Pomoże ktoś?
Treść: link
Wyniki: link
#include <iostream>
using namespace std;
struct Pkt {
long long x, y;
};
Pkt a[1000000];
long long ilo(Pkt P, Pkt A, Pkt B) {
return ((A.x-P.x)*(B.y-P.y) -
(B.x-P.x)*(A.y-P.y));
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int n;
cin >> n;
for (int i = 0; i < n; i ++)
cin >> a[i].x >> a[i].y;
for (int i = 2; i < n; i ++) {
if (ilo(a[0], a[1], a[i]) != 0) {
cout << "NIE";
return 0;
}
}
cout << "TAK";
}