Wprowadzenie
Dostałeś pracę jako minister finansów w swoim wymyślonym kraju na swoim podwórku. Zdecydowałeś się stworzyć własny bank w swoim kraju dla siebie i swoich mniej godnych zaufania przyjaciół. Ponieważ nie ufasz swoim znajomym, postanowiłeś napisać program do sprawdzania wszystkich transakcji, aby powstrzymać znajomych przed nadmiernym wydatkowaniem gotowej waluty i zrujnowaniem twojej gospodarki.
Zadanie
Biorąc pod uwagę saldo początkowe i wszystkie transakcje, odfiltruj wszystkie transakcje, w których ktoś próbuje przekroczyć wydatki, i zablokuj każdego, kto spróbuje je przekroczyć (obejmuje to próbę przekroczenia wydatków na zamkniętym koncie), aby nigdy więcej nie korzystał z Twojego banku, odfiltrowując przyszłe transakcje do lub z jego / jej konto bankowe.
Wejście wyjście
Dwie listy Ai Bjako dane wejściowe oraz lista Cjako dane wyjściowe. Ato saldo początkowe każdego konta w formacie [["Alice", 5], ["Bob", 8], ["Charlie", 2], ...]. Bto lista transakcji w formacie, w [["Bob", "Alice", 3], ["Charlie", "Bob", 5], ...]którym ["Bob", "Alice", 3]Bob chce zapłacić jednostkom walutowym Alice 3. Cpowinien mieć taki sam format jak B. A, BI Cmogą być w każdym rozsądnym formacie.
Przypadki testowe
A: [["Alice", 5], ["Bob", 2]]
B: [["Alice", "Bob", 5], ["Bob", "Alice" 7]]
C: [["Alice", "Bob", 5], ["Bob", "Alice" 7]]
A: [["A", 2], ["B", 3], ["C", 5]]
B: [["C", "A", 2], ["B", "C", 4], ["A", "B", 2]]
C: [["C", "A", 2]]
A: [["A", 2], ["B", 3]]
B: [["A", "B", 2], ["A", "B", 2]]
C: [["A", "B", 2]]
A: [["A", 4], ["B", 0]]
B: [["A", "B", 1], ["A", "B", 5], ["A", "B", 2]]
C: [["A", "B", 1]]
A: [["A", 2], ["B", 3], ["C", 4]]
B: [["A", "B", 3], ["C", "B", 4]]
C: [["C", "B", 4]]
A: [["A", 2], ["B", 3], ["C", 4]]
B: [["A", "B", 3], ["B", "A", 4], ["C", "B" 2]]
C: []
Punktacja
To jest golf-golf , wygrywa najkrótszy kod w bajtach w każdym języku.
["A", 2, "B", 3, "C", 5]?
A: [["A", 2], ["B", 3], ["C", 4]], B: [["A", "B", 3], ["C", "B", 4]], C: [["C", "B", 4]](ważna transakcja po nieprawidłowym jeden).
Ato być także słownik lub lista krotek?