Yastı təşkilat
Birinci sətir testlərin sayı z (1 ≤ z ≤ 100) ilə başlayır. Daha sonra testlərin təsvirləri verilir.
Hər bir test dəstinin ilk sətiri bir tam ədəd n (1 ≤ n ≤ 2000) - işçilərin sayını göstərir. İşçilər 1-dən n-ə qədər nömrələnmişdir.
Sonra n sətir gəlir, hər biri n tam ədəd d[i,j]
(0 ≤ d[i,j]
≤ 2 * 10^9
) ehtiva edir. Əgər işçi i işçi j-nin birbaşa rəhbəridirsə, d[i,j]
> 0 bu asılılığın tərsinə çevrilməsi halında i-nin hiss edəcəyi narazılığı göstərir. Əks halda (yəni, əgər j işçi i-nin birbaşa rəhbəridirsə və ya i = j-dirsə), d[i,j]
= 0 olur.
Bütün testlərdəki işçilərin ümumi sayı 10000-i keçmir.
Çıxış Məlumatları
Hər bir test üçün, hər hansı bir işçi cütü i, j (1 ≤ i, j ≤ n, i ≠ j) üçün ya i işçi j-nin birbaşa rəhbəri olacaq, ya da j işçi i-nin dolayı rəhbəri olacaq və ya əksinə olmasını təmin edən bir həll tapın. Həlliniz işçilərin narazılığının cəmini minimuma endirməlidir. Əgər bir neçə belə həll varsa, istənilən birini çıxış edə bilərsiniz.
Əgər həll mövcud deyilsə, "NO" sözünü çıxış edin.
Əks halda, ilk sətirdə "YES" sözünü çıxış edin. İkinci sətirdə iki tam ədəd k və r - çevriləcək işçi asılılıqlarının sayı və əldə olunan narazılıq cəmi. Qeyd edin ki, k-ni minimuma endirmək lazım deyil.
Sonra k sətir çıxış edin, hər birində iki tam ədəd - işçilərin identifikatorları a, b (1 ≤ a, b ≤ n, a ≠ b), belə ki, a hazırda b-nin birbaşa rəhbəridir və onların münasibətləri əksinə çevrilməlidir. Eyni işçi cütünü bir dəfədən çox çıxış etməyin.