Niestety, nie byliśmy w stanie w pełni poprawnie wyświetlić tego pliku, ponieważ nie jest zakodowany w UTF-8.
Możesz pobrać ten plik i spróbować otworzyć go samodzielnie.
#include<stdio.h> #include<stdlib.h> struct samochod { int x1; int x2; int nx1; int nx2; int wys; }; main () { int licz_testow,licz_pojazdow,wys_parkingu; struct samochod sam[50000]; int i,j,k,l; int a,b,c,wynik; int wx1, wy1, wx2, wy2; scanf("%d",&licz_testow); for(i=0;i<licz_testow;i++) { /*wczytywanie danych*/ scanf("%d %d",&licz_pojazdow,&wys_parkingu); for(j=0;j<licz_pojazdow;j++) { scanf("%d %d %d %d",&wx1,&wy1,&wx2,&wy2); if(wx1 < wx2) { sam[j].x1=wx1; sam[j].x2=wx2; }else { sam[j].x1=wx2; sam[j].x2=wx1; } if(wy1 < wy2) { sam[j].wys=wy2-wy1; }else { sam[j].wys=wy1-wy2; } } for(j=0;j<licz_pojazdow;j++) { scanf("%d %d %d %d",&wx1,&wy1,&wx2,&wy2); if(wx1 < wx2) { sam[j].nx1=wx1; sam[j].nx2=wx2; }else { sam[j].nx1=wx2; sam[j].nx2=wx1; } } /*cuda,dziwy,dane pomocnicze -*/ k=0; wynik=0; for(j=0;j<licz_pojazdow;j++){ /*je�li nie zmienia polozenia*/ if(sam[j].x1==sam[j].nx1) { continue; } else { //wolne miejsce - wysokosc a=wys_parkingu - sam[j].wys; for(k=0;k<licz_pojazdow;k++) { //jeden na drugim lub ten sam if(sam[j].x1==sam[k].x1) { continue; //jesli za duzy nie zmiesci sie } else if(a<sam[k].wys) { if(sam[j].x1<sam[k].x1&&sam[j].nx1<sam[k].nx1) continue; else if(sam[j].x1>sam[k].x1&&sam[j].nx1>sam[k].nx1) continue; else { wynik=1; break; } } } if(wynik==1) break; } } if(wynik==1) printf("NIE\n"); else printf("TAK\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 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 | #include<stdio.h> #include<stdlib.h> struct samochod { int x1; int x2; int nx1; int nx2; int wys; }; main () { int licz_testow,licz_pojazdow,wys_parkingu; struct samochod sam[50000]; int i,j,k,l; int a,b,c,wynik; int wx1, wy1, wx2, wy2; scanf("%d",&licz_testow); for(i=0;i<licz_testow;i++) { /*wczytywanie danych*/ scanf("%d %d",&licz_pojazdow,&wys_parkingu); for(j=0;j<licz_pojazdow;j++) { scanf("%d %d %d %d",&wx1,&wy1,&wx2,&wy2); if(wx1 < wx2) { sam[j].x1=wx1; sam[j].x2=wx2; }else { sam[j].x1=wx2; sam[j].x2=wx1; } if(wy1 < wy2) { sam[j].wys=wy2-wy1; }else { sam[j].wys=wy1-wy2; } } for(j=0;j<licz_pojazdow;j++) { scanf("%d %d %d %d",&wx1,&wy1,&wx2,&wy2); if(wx1 < wx2) { sam[j].nx1=wx1; sam[j].nx2=wx2; }else { sam[j].nx1=wx2; sam[j].nx2=wx1; } } /*cuda,dziwy,dane pomocnicze -*/ k=0; wynik=0; for(j=0;j<licz_pojazdow;j++){ /*je�li nie zmienia polozenia*/ if(sam[j].x1==sam[j].nx1) { continue; } else { //wolne miejsce - wysokosc a=wys_parkingu - sam[j].wys; for(k=0;k<licz_pojazdow;k++) { //jeden na drugim lub ten sam if(sam[j].x1==sam[k].x1) { continue; //jesli za duzy nie zmiesci sie } else if(a<sam[k].wys) { if(sam[j].x1<sam[k].x1&&sam[j].nx1<sam[k].nx1) continue; else if(sam[j].x1>sam[k].x1&&sam[j].nx1>sam[k].nx1) continue; else { wynik=1; break; } } } if(wynik==1) break; } } if(wynik==1) printf("NIE\n"); else printf("TAK\n"); } return 0; } |