def chain_len(n): count = 1 while(n != 1): if not n & 1: n = n / 2 else: n = 3*n + 1 count += 1 return count max_len = 0 max_start = 0 for i in range(1, 1000000): len = chain_len(i) if len > max_len: max_start = i max_len = len print max_start