@arr = [1, 2, 5]
@limit = 7
@solution = []
def yoba_job(nodes = [], state = 0)
@arr.each { |n| yoba_job(nodes.clone.push(n), state + n) if state + n <= @limit }
@solution << nodes if state == @limit
end
def yoba_print
print @solution.map(&:sort).uniq.count
end
yoba_job
yoba_print
QGFyciA9IFsxLCAyLCA1XQpAbGltaXQgPSA3CkBzb2x1dGlvbiA9IFtdCgpkZWYgeW9iYV9qb2Iobm9kZXMgPSBbXSwgc3RhdGUgPSAwKQogIEBhcnIuZWFjaCB7IHxufCB5b2JhX2pvYihub2Rlcy5jbG9uZS5wdXNoKG4pLCBzdGF0ZSArIG4pIGlmIHN0YXRlICsgbiA8PSBAbGltaXQgfQogIEBzb2x1dGlvbiA8PCBub2RlcyBpZiBzdGF0ZSA9PSBAbGltaXQKZW5kCgpkZWYgeW9iYV9wcmludAogIHByaW50IEBzb2x1dGlvbi5tYXAoJjpzb3J0KS51bmlxLmNvdW50CmVuZAoKeW9iYV9qb2IKeW9iYV9wcmludAo=