#include <iostream> using namespace std; int main() { cin.sync_with_stdio(false); cout.sync_with_stdio(false); int t; cin>>t; for (int j=0;j<t;j++) { int n; cin>>n; bool majoryzuje = true; int w1,w2,h1,h2; cin>>w1>>w2>>h1>>h2; int mw1=w1, mw2=w2,mh1=h1,mh2=h2; for(int i=1;i<n;i++) { cin>>w1>>w2>>h1>>h2; if ( (mw1>=w1) && (mw2<=w2) && (mh1>=h1) && (mh2<=h2) ) //nowy majoryzujcy { majoryzuje = true; mw1=w1; mw2=w2; mh1=h1; mh2=h2; } else if ( !( (mw1<=w1) && (mw2>=w2) && (mh1<=h1) && (mh2>=h2) ) )// nie wewnętrzny { //wykracza poza porzedni, ale nie majoryzuje. majoryzuje = false; mw1= min(mw1,w1); mw2= max(mw2,w2); mh1= min(mh1,h1); mh2= max(mh2,h2); } } cout<< ((majoryzuje)?"TAK":"NIE")<<endl; } 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 | #include <iostream> using namespace std; int main() { cin.sync_with_stdio(false); cout.sync_with_stdio(false); int t; cin>>t; for (int j=0;j<t;j++) { int n; cin>>n; bool majoryzuje = true; int w1,w2,h1,h2; cin>>w1>>w2>>h1>>h2; int mw1=w1, mw2=w2,mh1=h1,mh2=h2; for(int i=1;i<n;i++) { cin>>w1>>w2>>h1>>h2; if ( (mw1>=w1) && (mw2<=w2) && (mh1>=h1) && (mh2<=h2) ) //nowy majoryzujcy { majoryzuje = true; mw1=w1; mw2=w2; mh1=h1; mh2=h2; } else if ( !( (mw1<=w1) && (mw2>=w2) && (mh1<=h1) && (mh2>=h2) ) )// nie wewnętrzny { //wykracza poza porzedni, ale nie majoryzuje. majoryzuje = false; mw1= min(mw1,w1); mw2= max(mw2,w2); mh1= min(mh1,h1); mh2= max(mh2,h2); } } cout<< ((majoryzuje)?"TAK":"NIE")<<endl; } return 0; } |