#include <stdio.h> #define FOR(ii, ll, uu) for(int ii##lim = (uu), ii = (ll); ii < ii##lim; ++ii) #define REP(ii, nn) FOR(ii, 0, nn) // from stackoverflow #define getcx getchar_unlocked inline int giu() { int n = 0; int ch=getcx(); while (ch < '0' || ch > '9') { ch = getcx(); } while (ch >= '0' && ch <= '9') n = (n<<3)+(n<<1) + ch-'0', ch = getcx(); return n; } #define GI (giu()) #include <algorithm> using std::min; using std::max; int main() { REP(t, GI) { int n = GI; int min_w = GI, max_w = GI, min_h = GI, max_h = GI; bool dominator = true; REP(i, n-1) { int w1 = GI, w2 = GI, h1 = GI, h2 = GI; if (w1 <= min_w && w2 >= max_w && h1 <= min_h && h2 >= max_h) { min_w = w1; max_w = w2; min_h = h1; max_h = h2; dominator = true; continue; } if (w1 >= min_w && w2 <= max_w && h1 >= min_h && h2 <= max_h) continue; dominator = false; min_w = min(w1, min_w); max_w = max(w2, max_w); min_h = min(h1, min_h); max_h = max(h2, max_h); } puts(dominator?"TAK":"NIE"); } 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 52 53 54 55 56 57 | #include <stdio.h> #define FOR(ii, ll, uu) for(int ii##lim = (uu), ii = (ll); ii < ii##lim; ++ii) #define REP(ii, nn) FOR(ii, 0, nn) // from stackoverflow #define getcx getchar_unlocked inline int giu() { int n = 0; int ch=getcx(); while (ch < '0' || ch > '9') { ch = getcx(); } while (ch >= '0' && ch <= '9') n = (n<<3)+(n<<1) + ch-'0', ch = getcx(); return n; } #define GI (giu()) #include <algorithm> using std::min; using std::max; int main() { REP(t, GI) { int n = GI; int min_w = GI, max_w = GI, min_h = GI, max_h = GI; bool dominator = true; REP(i, n-1) { int w1 = GI, w2 = GI, h1 = GI, h2 = GI; if (w1 <= min_w && w2 >= max_w && h1 <= min_h && h2 >= max_h) { min_w = w1; max_w = w2; min_h = h1; max_h = h2; dominator = true; continue; } if (w1 >= min_w && w2 <= max_w && h1 >= min_h && h2 <= max_h) continue; dominator = false; min_w = min(w1, min_w); max_w = max(w2, max_w); min_h = min(h1, min_h); max_h = max(h2, max_h); } puts(dominator?"TAK":"NIE"); } return 0; } |