09/08/18 15:43:26
>>203
最初はとにかくやりたいことをそのまま書くといい
多くの場合、そのまま実行しても充分に速い
def add(base, key, val)
if tgt = base[key]
val.each_pair do |k,v|
if tgt[k] then
tgt[k] = tgt[k] + v
else
tgt[k] = v
end
end
else
base[key] = val
end
end
h={"ja"=>{"a"=>1,"b"=>1,"c"=>0},
"usa"=>{"a"=>0,"b"=>0,"c"=>0}
}
add(h, 'usa', {"a"=>1,"b"=>1,"c"=>0})
p h
{"ja"=>{"a"=>1, "b"=>1, "c"=>0}, "usa"=>{"a"=>1, "b"=>1, "c"=>0}}