Şosse boyunca şəhərlər
Şosse boyunca bir neçə şəhər yerləşir və bu şosse heç bir qola malik deyil. Qonşu şəhərlər arasındakı məsafələr verildikdə, istənilən şəhərdən digər şəhərlərə olan bütün məsafələri hesablamaq mümkündür. Məsələn, beş şəhər (A, B, C, D və E) və Şəkil 1-də göstərilən qonşu şəhərlər arasındakı məsafələr verildikdə, Şəkil 2-də göstərildiyi kimi, şəhərlər arasındakı bütün cütlər üçün məsafələri əks etdirən yuxarı üçbucaq matrisini hesablamaq olar.
Şəkil 1: Şəhərlərin nümunəsi
Şəkil 2: Şəkil 1 üçün məsafə matrisi
Bu məsələdə, əks problemi həll etməlisiniz. Siz yalnız şəhərlər arasındakı bütün cütlər üçün məsafələri bilirsiniz, yəni yuxarıdakı matrisdə N(N −1)/2 ədəd. Sonra, şəhərlərin sırasını və hər şəhərdən növbəti şəhərə olan məsafələri bərpa etməlisiniz.
Giriş verilənləri
Giriş bir sıra datasetlərdən ibarətdir. Hər dataset aşağıdakı kimi formatlanmışdır.
N d_1 d_2 ... d_{N(N−1)/2}
Birinci sətir şossedəki şəhərlərin sayı olan N (2 ≤ N ≤ 20) tam ədədini ehtiva edir. Sonrakı sətirlər, şəhərlər arasındakı bütün cütlər üçün məsafələr olan N(N−1)/2 tam ədədini ehtiva edir, bunlar tək boşluq və ya yeni sətir ilə ayrılmışdır. Ədədələr matrisdə harada yerləşdiyinə dair heç bir məlumat olmadan azalan qaydada verilir. Hər bir məsafənin 1 ilə 400 arasında olduğunu qəbul edə bilərsiniz. Ən uzun məsafə sol şəhərdən sağ şəhərə olan məsafədir.
Girişin sonu sıfır olan bir sətir ilə göstərilir.
Çıxış verilənləri
Hər dataset üçün, şəhərlərin sırasına görə hər bir şəhərdən növbəti şəhərə olan məsafə olan N−1 tam ədədini bir sətirdə çıxarın. Sətirdəki ədədlər tək boşluq ilə ayrılmalıdır. Əgər cavab unikal deyilsə, hər bir cavaba uyğun olan tam ədədlərin ardıcıllığı kimi leksik qaydada sıralanmış çoxlu sətir çıxarın. Məsələn, '2 10' '10 2'-dən əvvəl gəlməlidir. Əgər heç bir cavab yoxdursa, heç nə çıxarmayın. Hər dataset üçün çıxışın sonunda, insan oxunaqlılığı üçün beş minus simvolu '—–' olan bir sətir çap edilməlidir. Çıxışda əlavə simvollar olmamalıdır. Məsələn, sətirin sonunda əlavə boşluqlar icazə verilmir.