1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <bits/stdc++.h>
#define endl '\n'
using namespace std;

int main () {
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int t;
	cin >> t;
	while (t--) {
		int n;
		cin >> n;
		vector <double> l(n),a(n),b(n);
		double litry = 0;
		long long suma1=0,suma2=0;
		for (int i=0;i<n;i++) {
			cin >> l[i] >> a[i] >> b[i];
			litry+=l[i];
			suma1+=a[i];suma2+=b[i];
		}
		if (suma1!=suma2) {
          		cout << "NIE" << endl;
                 	continue;
	        }
		vector <vector <double> > x(n);
		for (int i=0;i<n;i++) {
			for (int j=0;j<n;j++) {
				if (a[i] == b[i]) {
					x[i].emplace_back(0);
				}
				else if (a[j] == a[i]) { 
					x[i].emplace_back(-69);
				}
				else if (i==j) {
					x[i].emplace_back(-69);
				}
				else {
					x[i].emplace_back((l[i]*(b[i]-a[i]))/(a[j]-a[i]));
				}
			}
		}
		vector <double> mini(n,DBL_MAX);
		for (int i=0;i<n;i++) {
			for (auto u:x[i]) {
				if (u >= 0) {
					mini[i] = min(u,mini[i]);
				}
			}
		}
		double wyn = 0;
		for (auto u:mini) {
			//cout << u << " ";
			wyn+=u;
		}
	//	long long nowywyn = wyn;
		//cout << endl;
		if (wyn > litry) {
			cout << "NIE" << endl;
		}
		else {
			cout << "TAK" << endl;
		}
	}
}