#!/usr/bin/python3 "Compute a histogram of last-word frequencies for lines of input." import sys, collections, math def entropy(distribution): total = sum(v for k, v in distribution.items()) p = dict((k, v/total) for k, v in distribution.items()) return sum(v * -math.log(v)/math.log(2) for k, v in p.items()) if __name__ == '__main__': hist = collections.Counter(line.split()[-1] for line in sys.stdin) print(hist) print(entropy(hist), 'bits per item')