#!/usr/bin/ruby -w
# answer: http://o...content-available-to-author-only...e.jp/qa/q7067894.html
require 'pp'
h1 = {
user1: {a: 10, b: 20, c: 30},
user2: {d: 5, e: 8},
user3: {f: 10, g: 5, h: 10},
user4: {i: 0, j: 9, k: 10},
user5: {l: 4, m: 100},
user6: {n: 1, o: 0, p: 100},
user7: {q: 6, r: 9},
user8: {s: 1, t: 10, u: 90},
user9: {v: 12, w: 20},
}
pp h1.sort_by{|*, h2|h2.inject(0){|sum, pair| sum - pair[1]}}
IyEvdXNyL2Jpbi9ydWJ5IC13CiMgYW5zd2VyOiBodHRwOi8vby4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4uZS5qcC9xYS9xNzA2Nzg5NC5odG1sCgpyZXF1aXJlICdwcCcKCmgxID0gewogIHVzZXIxOiB7YTogMTAsIGI6IDIwLCBjOiAzMH0sCiAgdXNlcjI6IHtkOiA1LCBlOiA4fSwKICB1c2VyMzoge2Y6IDEwLCBnOiA1LCBoOiAxMH0sCiAgdXNlcjQ6IHtpOiAwLCBqOiA5LCBrOiAxMH0sCiAgdXNlcjU6IHtsOiA0LCBtOiAxMDB9LAogIHVzZXI2OiB7bjogMSwgbzogMCwgcDogMTAwfSwKICB1c2VyNzoge3E6IDYsIHI6IDl9LAogIHVzZXI4OiB7czogMSwgdDogMTAsIHU6IDkwfSwKICB1c2VyOToge3Y6IDEyLCB3OiAyMH0sCn0KCnBwIGgxLnNvcnRfYnl7fCosIGgyfGgyLmluamVjdCgwKXt8c3VtLCBwYWlyfCBzdW0gLSBwYWlyWzFdfX0=
[[:user5, {:l=>4, :m=>100}],
[:user8, {:s=>1, :t=>10, :u=>90}],
[:user6, {:n=>1, :o=>0, :p=>100}],
[:user1, {:a=>10, :b=>20, :c=>30}],
[:user9, {:v=>12, :w=>20}],
[:user3, {:f=>10, :g=>5, :h=>10}],
[:user4, {:i=>0, :j=>9, :k=>10}],
[:user7, {:q=>6, :r=>9}],
[:user2, {:d=>5, :e=>8}]]