Kəsişmə — birləşmə
Petrik riyaziyyat dərslərində aşağıdakı anlayışlarla tanış oldu:
kəsişmə - çoxluqlar toplusunun bütün çoxluqlarına aid olan elementlərdən ibarət olan çoxluqdur;
birləşmə - çoxluqlar toplusunun ən azı bir çoxluğa aid olan elementlərdən ibarət olan çoxluqdur.
Müəllim, şagirdlərin bu anlayışları yaxşı mənimsədiklərinə və qarışdırmadıqlarına əmin olmaq üçün ev tapşırığı olaraq bir sıra məsələlər verdi.
Petrikə ev tapşırığını avtomatlaşdırmaqda kömək edin və çoxluqların kəsişməsini və birləşməsini tapan bir proqram yaradın. Hər bir çoxluq ya real xəttin intervalı, ya da tək elementli çoxluqdur.
Giriş verilənləri
Giriş faylının birinci sətiri çoxluqların sayını göstərən bir natural ədəd n ehtiva edir, hansı ki, onların kəsişməsi və birləşməsi tapılmalıdır.
Bütün növbəti sətirlər test dəstlərini təsvir edir. Hər bir testdən əvvəl boş bir sətir yerləşdirilib və testin özü n sətirdən ibarətdir, hər birində aşağıdakılar yazılıb:
ya tək elementli çoxluq belə:
"{"
vergül və ya nöqtəsiz natural ədədin onluq yazılışı
"}".
ya da interval belə:
"[" və ya "("
vergül və ya nöqtəsiz sol ucun onluq yazılışı
";"
vergül və ya nöqtəsiz sağ ucun onluq yazılışı
")" və ya "]".
Kvadrat mötərizələr "[" və ya "]" müvafiq ucun intervala aid olduğunu göstərir. Dairəvi mötərizələr "(" və ya ")" müvafiq ucun intervala aid olmadığını göstərir. Bütün intervalların ucları və bütün tək elementli çoxluqların elementləri natural ədədlərdir və 3(n+4)-ü keçmir.
Giriş faylının son sətiri boşdur.
Aşağıdakı n dəyərləri üçün yoxlama nəzərdə tutulub: 2, 8, 4000, 40000. Müvafiq giriş faylları 249, 249, 249 və 261 testlər ehtiva edir, yəni 749, 2243, 996251 və 10440263 sətir.
Çıxış verilənləri
Çıxış faylı 3 sətirlik qruplardan ibarətdir. Qrupların sayı giriş faylındakı testlərin sayı ilə eynidir.
Qrupun birinci sətiri müvafiq giriş fayl qrupunda verilmiş çoxluqların kəsişməsinin ənənəvi yazılışını (giriş məlumatlarına olan tələblərə baxın) ehtiva etməlidir. Əgər kəsişmə boşdursa, bu sətir yalnız iki simvol "{}" ehtiva edir.
Qrupun ikinci sətiri müvafiq giriş fayl qrupunda verilmiş çoxluqların birləşməsinin ənənəvi yazılışını ehtiva etməlidir, birləşmə əməliyyatını göstərmək üçün böyük latın hərfi «U» istifadə olunmalıdır. Bu birləşmə intervalların və tək elementli çoxluqların birləşməsi kimi təqdim edilməlidir:
hər hansı iki intervalın və ya hər hansı bir interval və hər hansı bir tək elementli çoxluğun birləşməsi interval deyil;
intervallar və tək elementli çoxluqlar real xəttin müsbət istiqamətində, yəni intervalların uclarının və tək elementli çoxluqların elementlərinin artma sırasına görə yazılır.
Qrupun üçüncü sətiri boş olmalıdır.