import sys def odd_number_of_divisors(n, number_of_passes): """Counts the number of times the door is toggled, and returns True if left open after a number of passes.""" return sum((n % i == 0 for i in range(1, number_of_passes + 1))) % 2 == 1 def pass_doors(number_of_doors, number_of_passes): if number_of_passes > number_of_doors: number_of_passes = number_of_doors return sum( ( odd_number_of_divisors(i, number_of_passes) for i in range(1, number_of_doors + 1) ) ) if __name__ == "__main__": print(pass_doors(int(sys.argv[1]), int(sys.argv[2])))