Minimal örtük
Verilmiş düz xətt parçası çoxluğundan, tam ədədi koordinatları olan [L_i, R_i] ucları ilə, [0, M] parçasını tamamilə örtən ən kiçik gücə malik alt çoxluğu seçmək lazımdır. Burada M müsbət tam ədəddir.
Giriş verilənləri
Birinci sətirdə tam ədəd M (1 ≤ M ≤ 5000) verilir. Sonrakı sətirlərdə tam ədədlər cütləri L_i və R_i (|L_i|, |R_i| ≤ 50000) sadalanır. Hər bir cüt yeni sətirdə verilir və cütlərdəki ədədlər bir və ya bir neçə boşluqla ayrılır. Siyahı iki sıfır cütü ilə tamamlanır. Siyahı, sıfır cütü daxil olmaqla, ən çox 100000 cüt ədəd ehtiva edir.
Çıxış verilənləri
Proqram birinci sətirdə verilmiş çoxluqdan [0, M] parçasını örtmək üçün lazım olan minimum parça sayını formalaşdırmalıdır. Daha sonra, örtən alt çoxluğun siyahısı, parçaların sol uclarının koordinatlarının artma sırasına görə sıralanmış şəkildə təqdim edilməlidir. Parçaların siyahısı girişdə olduğu formatda çıxarılır və son cüt sıfırları çıxarmaq lazım deyil.
Əgər [0, M] parçasını verilmiş [L_i, R_i] parçaları çoxluğu ilə örtmək mümkün deyilsə, onda tək bir ifadə "No solution" çıxarılmalıdır.