Düşünürəm ki, özümə bir futbol komandası alacağam.
Düşən Səhm Dəyərləri. İflas etmiş şirkətlər. Nağd pulu olmayan banklar. Görünür, investisiya üçün ən yaxşı vaxtdır: "Düşünürəm ki, bir futbol komandası alacağam!"
Ciddi olaraq, məncə banklardakı nağd pul probleminin ən azından həlli var. Banklar bu günlərdə bir-birinə böyük məbləğlər borcludur və heç bir bank digər bankların borclarını ödəmək üçün kifayət qədər nağd pula malik deyil, baxmayaraq ki, kağız üzərində kifayət qədər pulları olmalıdır. Məsələn, (a) şəklində göstərilən banklararası kreditlərə baxın. Qrafik dörd bank (A...D) arasında olan borcları göstərir. Məsələn, A B-yə 50M borcludur, eyni zamanda B A-ya 150M borcludur. (İki bankın eyni vaxtda bir-birinə borclu olması çox yaygındır). Banklar arasında bütün borcları ödəmək üçün ümumilikdə 380M nağd pul lazımdır.
Nağd pul ehtiyacını azaltmaq cəhdində və nümunəni diqqətlə öyrəndikdən sonra, lazımsız olaraq çoxlu nağd pulun köçürüldüyünü gördüm. Baxın:
C D-yə borcludur, eyni məbləğdə D A-ya borcludur, beləliklə, C-nin A-ya 30M borclu olduğunu deyə bilərik və D-ni şəkildən çıxara bilərik.
Amma A artıq C-yə 100M borcludur, beləliklə, A-nın C-yə 70M borclu olduğunu deyə bilərik.
Eyni şəkildə, B yalnız A-ya 100M borcludur, (çünki A artıq B-yə 50M borcludur). Bu, yuxarıdakı qrafiki (b) şəklində göstərilən qrafikə endirir və lazım olan nağd pul məbləğini 190M-ə endirir (200M azalma, ya da 53%).
Mən hələ də daha yaxşı edə bilərəm. B A-ya 100M ödəmək və A C-yə 70M ödəmək əvəzinə, B C-yə birbaşa 70M (A-nın 100M-dən) ödəyə bilər. Bu, qrafiki (c) şəklində göstərilən qrafikə endirir. Banklar bütün borclarını yalnız 120M nağd pulla həll edə bilərlər. Ümumilikdə 260M azalma və ya 68%. Möhtəşəm!
Məndə banklararası borclar haqqında məlumat var, amma bütün borcları ödəmək üçün lazım olan minimum nağd pul məbləğini əldə etmək üçün onu işləyə bilmirəm. Xahiş edirəm, bunu etmək üçün bir proqram yaza bilərsinizmi?
Giriş verilənləri
Proqramınız bir və ya daha çox test halında sınaqdan keçiriləcək. Hər bir test halı N+1 sətirdə göstərilir, burada N < 1000 bankların sayıdır və ilk sətirdə göstərilir. Qalan N sətir banklararası borcları N×N bitişiklik matrisi (sıfır diaqonallı) ilə göstərir və sıra-majör qaydada göstərilir. i-ci sıra i-ci bankın borclu olduğu məbləğləri göstərir. Məbləğlər bir və ya daha çox boşluqla ayrılır. Giriş faylının son sətirində tək 0 var.
Çıxış verilənləri
Hər bir test halı üçün nəticəni aşağıdakı formatda çap edin:
k. B A
burada k test halı nömrəsidir (1-dən başlayır), bir boşluq simvoludur, B azalma öncəsi lazım olan nağd pul məbləği və A azalmadan sonra lazım olan nağd pul məbləğidir.