#include <cstdio>
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
using namespace std;
typedef vector<int> VI;
typedef long long LL;
typedef pair<int, int> PII;
#define FOR(x, b, e) for (int x = b; x <= (e); ++x)
#define FORD(x, b, e) for (int x = b; x >= (e); --x)
#define REP(x, n) for (int x = 0; x < (n); ++x)
#define VAR(v, n) __typeof(n) v = (n)
#define ALL(c) (c).begin(), (c).end()
#define SIZE(x) ((int) (x).size())
#define FOREACH(i, c) for (VAR(i, (c).begin()); i != (c).end(); ++i)
#define PB push_back
#define ST first
#define ND second
#define MP make_pair
// 10^9 + 1
#define INF 1000000001
bool majorize()
{
int n, w1, w2, h1, h2, wmin, wmax, hmin, hmax, imaj = -1;
wmin = hmin = INF;
wmax = hmax = 0;
scanf("%d\n", &n);
REP(i, n) {
scanf("%d %d %d %d\n", &w1, &w2, &h1, &h2);
if (w1 < wmin || w2 > wmax || h1 < hmin || h2 > hmax) {
imaj = -1;
wmin = min(wmin, w1);
wmax = max(wmax, w2);
hmin = min(hmin, h1);
hmax = max(hmax, h2);
}
if (wmin == w1 && wmax == w2 && hmin == h1 && hmax == h2) imaj = i;
}
return imaj != -1;
}
int main()
{
int T;
scanf("%d\n", &T);
REP(t, T) printf(majorize() ? "TAK\n" : "NIE\n");
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 58 | #include <cstdio> #include <iostream> #include <algorithm> #include <string> #include <vector> using namespace std; typedef vector<int> VI; typedef long long LL; typedef pair<int, int> PII; #define FOR(x, b, e) for (int x = b; x <= (e); ++x) #define FORD(x, b, e) for (int x = b; x >= (e); --x) #define REP(x, n) for (int x = 0; x < (n); ++x) #define VAR(v, n) __typeof(n) v = (n) #define ALL(c) (c).begin(), (c).end() #define SIZE(x) ((int) (x).size()) #define FOREACH(i, c) for (VAR(i, (c).begin()); i != (c).end(); ++i) #define PB push_back #define ST first #define ND second #define MP make_pair // 10^9 + 1 #define INF 1000000001 bool majorize() { int n, w1, w2, h1, h2, wmin, wmax, hmin, hmax, imaj = -1; wmin = hmin = INF; wmax = hmax = 0; scanf("%d\n", &n); REP(i, n) { scanf("%d %d %d %d\n", &w1, &w2, &h1, &h2); if (w1 < wmin || w2 > wmax || h1 < hmin || h2 > hmax) { imaj = -1; wmin = min(wmin, w1); wmax = max(wmax, w2); hmin = min(hmin, h1); hmax = max(hmax, h2); } if (wmin == w1 && wmax == w2 && hmin == h1 && hmax == h2) imaj = i; } return imaj != -1; } int main() { int T; scanf("%d\n", &T); REP(t, T) printf(majorize() ? "TAK\n" : "NIE\n"); return 0; } |
English