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
#include <stdio.h>

#define max(a, b) ((a)>(b)?(a):(b))
#define min(a, b) ((a)<(b)?(a):(b))

int tab[100*1000+10][4];
int minw, maxw, minh, maxh;

int find(int n)
{
    int i;
    for(i=0; i<n; ++i)
    {
        if(minw==tab[i][0]&&
           maxw==tab[i][1]&&
           minh==tab[i][2]&&
           maxh==tab[i][3]) return 1;        
    }
    return 0;
}

int main(void)
{
    int t, n, i;
    scanf("%d", &t);
    while(t--)
    {
        scanf("%d", &n);
        minw=minh=2*1000*1000;
        maxw=maxh=-1;
        for(i=0; i<n; ++i)
        {
            scanf("%d%d%d%d",tab[i], tab[i]+1, tab[i]+2, tab[i]+3);
            minw=min(minw, tab[i][0]);
            maxw=max(maxw, tab[i][1]);
            minh=min(minh, tab[i][2]);
            maxh=max(maxh, tab[i][3]);
        }
        if(find(n)) puts("TAK"); else puts("NIE");
    } 
    return 0;
}