#include <cstdio> #include <iostream> #include <set> #include <algorithm> #include <iomanip> #define REP(i, n) for(int i = 0; i < n; i++) #define FWD(i, a, b) for(int i = a; i < b; i++) #define ALL(u) (u).begin(), (u).end() using namespace std; typedef pair<int,int> PII; typedef long long LL; struct rectangle { int w1, w2, h1, h2; bool not_worse_than(rectangle r) { return w1 <= r.w1 and w2 >= r.w2 and h1 <= r.h1 and h2 >= r.h2; } }; void solve() { int n; scanf("%d", &n); vector<rectangle> V; int best = 0; REP(i, n) { rectangle r; scanf("%d %d %d %d", &r.w1, &r.w2, &r.h1, &r.h2); V.push_back(r); if (r.not_worse_than(V[best])) { best = i; } } bool maximum = true; for (auto r : V) { if (not V[best].not_worse_than(r)) { maximum = false; } } if (maximum) printf("TAK\n"); else printf("NIE\n"); } int main() { int cas; scanf("%d", &cas); while(cas--) solve(); return 0; }
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 | #include <cstdio> #include <iostream> #include <set> #include <algorithm> #include <iomanip> #define REP(i, n) for(int i = 0; i < n; i++) #define FWD(i, a, b) for(int i = a; i < b; i++) #define ALL(u) (u).begin(), (u).end() using namespace std; typedef pair<int,int> PII; typedef long long LL; struct rectangle { int w1, w2, h1, h2; bool not_worse_than(rectangle r) { return w1 <= r.w1 and w2 >= r.w2 and h1 <= r.h1 and h2 >= r.h2; } }; void solve() { int n; scanf("%d", &n); vector<rectangle> V; int best = 0; REP(i, n) { rectangle r; scanf("%d %d %d %d", &r.w1, &r.w2, &r.h1, &r.h2); V.push_back(r); if (r.not_worse_than(V[best])) { best = i; } } bool maximum = true; for (auto r : V) { if (not V[best].not_worse_than(r)) { maximum = false; } } if (maximum) printf("TAK\n"); else printf("NIE\n"); } int main() { int cas; scanf("%d", &cas); while(cas--) solve(); return 0; } |