This documentation is automatically generated by online-judge-tools/verification-helper
require "spec"
require "../../src/collection/tally"
describe Enumerable do
it "#tally(*, default)" do
c = [1, 2, 2, 3, 3, 3].tally(default: 0)
c.should eq({1 => 1, 2 => 2, 3 => 3})
c[0].should eq 0
c = [1, 2, 2, 3, 3, 3].tally(default: 100)
c.should eq({1 => 101, 2 => 102, 3 => 103})
c[0].should eq 100
end
end
require "spec"
# require "../../src/collection/tally"
module Enumerable(T)
def tally(*, default : Int32) : Hash(T, Int32)
each_with_object(Hash(T, Int32).new default) do |value, hash|
hash[value] += 1
end
end
end
describe Enumerable do
it "#tally(*, default)" do
c = [1, 2, 2, 3, 3, 3].tally(default: 0)
c.should eq({1 => 1, 2 => 2, 3 => 3})
c[0].should eq 0
c = [1, 2, 2, 3, 3, 3].tally(default: 100)
c.should eq({1 => 101, 2 => 102, 3 => 103})
c[0].should eq 100
end
end