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
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main()
{
    int t;
    string liniaT;
    string liniaPomocnicza="";
    getline(cin, liniaT);
    liniaT+=" ";
    int sizeLiniaT=liniaT.length();

    int pointer=0;
    for(int i=0;i<sizeLiniaT;i++)
    {
        char x=liniaT[i];
        if(x>='0'&&x<='9')
            liniaPomocnicza+=x;
        else if(liniaPomocnicza!="")
        {
            t=atoi(liniaPomocnicza.c_str());
            liniaPomocnicza="";
        }
    }
    string wyniki[t];

    int n;
    string liniaN;
    for(int i=0;i<t;i++)
    {
        liniaN="";
        getline(cin, liniaN);
        liniaN+=" ";
        int sizeLiniaN=liniaN.length();
        for(int o=0;o<sizeLiniaN;o++)
        {
            char y=liniaN[o];
            if(y>='0'&&y<='9')
                liniaPomocnicza+=y;
            else if(liniaPomocnicza!="")
            {
                n=atoi(liniaPomocnicza.c_str());
                liniaPomocnicza="";
            }

        }

        int tablica[n][3];
        for(int m=0;m<n;m++)
            for(int n=0;n<3;n++)
                tablica[m][n]=0;

        int mina=1000000,minb=1000000,maxa,maxb;
        unsigned long long int aa=0,bb=0;
        for(int j=0;j<n;j++)
        {
            int l=0;
            string liniaA="";
            getline(cin, liniaA);
            liniaA+=" ";
            int sizeLiniaA=liniaA.length();
            for(int k=0;k<sizeLiniaA;k++)
            {
                char z=liniaA[k];
                if(z>='0'&&z<='9')
                    liniaPomocnicza+=z;
                else if(liniaPomocnicza!="")
                {
                    tablica[j][l]=atoi(liniaPomocnicza.c_str());

                    l++;
                    liniaPomocnicza="";
                }
            }





        }
        //wyznaczenie min i sredniej
            for(int p=0;p<n;p++){
                if(tablica[p][1]<mina) mina=tablica[p][1];
                if(tablica[p][2]<minb) minb=tablica[p][2];

		if(tablica[p][1]>maxa) maxa=tablica[p][1];
                if(tablica[p][2]>maxb) maxb=tablica[p][2];
                aa+=(tablica[p][0]*tablica[p][1]);
                bb+=(tablica[p][0]*tablica[p][2]);


            }
            //cout <<mina<<"\n"<<minb<<"\n"<<sumaa<<"\n"<<sumab;
            if(mina<=minb&&aa==bb&&maxb<=maxa) wyniki[pointer]="TAK";
            else wyniki[pointer]="NIE";
            pointer++;



    }
    for(int i=0;i<pointer;i++){
        cout<< wyniki[i]<<endl;
    }



    return 0;
}