Gənc şəbəkəçi
2000-ci illərin əvvəlləri...
Kiçik ev şəbəkələrinin layihələndirilməsində təcrübəli olduğunuzu iddia etdiyiniz üçün, sizə binanızda bir şəbəkə qurmaq təklif edildi. Kim biləcək ki, bu sizin ilk təcrübənizdir?
Beləliklə, şəbəkə N istifadəçini birləşdirəcək. Hər bir istifadəçi şəbəkə kabeli ilə bir kommunikatora (hub) qoşulur. Hub-lar da eyni kabellərlə bir-birinə qoşula bilər, belə ki, hub-un eyni portu həm son istifadəçi ilə əlaqə üçün, həm də hub-ların bir-birinə qoşulması üçün istifadə edilə bilər. Şəbəkə hər hansı iki istifadəçi arasında bir və ya bir neçə hub vasitəsilə əlaqə təmin etməlidir.
Köhnə əşyalarınız arasında axtarış edərkən, istifadə üçün tam yararlı M hub tapdınız. i-ci hub (1 ≤ i ≤ M) k_i şəbəkə portuna malikdir.
Çünki siz şəbəkə istifadəçilərinin yalnız ən yaxın hub-a qədər kabel almaq xərclərini daşıyacaqlarına söz verdiniz, şəbəkəni elə layihələndirməlisiniz ki, mövcud cihazlardan minimum sayda istifadə edilsin (gələcək layihələr üçün də nəsə saxlamalısınız!).
Bu problemi həll edə bilərsinizmi?
Giriş verilənləri
Giriş faylının ilk sətirində N və M (2 ≤ N ≤ 1000, 1 ≤ M ≤ 300) ədədləri verilir. İkinci sətir M ədədini ehtiva edir - k_i dəyərləri (2 ≤ k_i ≤ 48).
Çıxış verilənləri
Əgər problem həll olunmazsa, çıxış faylının yeganə sətri Epic fail mətnini ehtiva etməlidir.
Əks halda, birinci sətirdə istifadə olunan hub-ların sayı K, ikinci sətirdə isə onların nömrələri göstərilməlidir (mövcud hub-ların nömrələnməsi birlə başlayır).
Əgər problem bir neçə həllə malikdirsə, onlardan hər hansı birini göstərin.