前書き
あなたはあなたの裏庭で、あなたのメイクアップされた国で財務大臣としての仕事を得ました。あなたとあなたの信頼性の低い友人のために、あなたの国であなた自身の銀行を作ることにしました。友人を信用していないため、すべての取引を検証するプログラムを作成して、友人が構成通貨を使い果たして経済を台無しにするのを防ぐことにしました。
仕事
開始残高とすべてのトランザクションを考えると、誰かが使いすぎたすべてのトランザクションを除外し、使い過ぎた人(これは閉鎖された口座への使いすぎを含む)がブロックするようになります。 /彼女の銀行口座。
入出力
入力としての2つのリストAと出力としてBのリストC。Aは、形式の各アカウントの開始残高です[["Alice", 5], ["Bob", 8], ["Charlie", 2], ...]。Bフォーマットとの取引のリストである手段ボブがアリスの3通貨単位を支払うことを望んでいます。と同じ形式にする必要があります。、および任意の合理的な形式にすることができます。[["Bob", "Alice", 3], ["Charlie", "Bob", 5], ...]["Bob", "Alice", 3]CBABC
テストケース
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: []
得点
これはcode-golfで、各言語のバイト単位の最短コードが勝ちます。
["A", 2, "B", 3, "C", 5]ですか?
A: [["A", 2], ["B", 3], ["C", 4]]、B: [["A", "B", 3], ["C", "B", 4]]、C: [["C", "B", 4]](無効1次有効なトランザクション)。
Aまた、辞書、またはタプルのリストで?