Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

23 lines
484B

  1. from collections import defaultdict
  2. from itertools import count
  3. def divisors(N):
  4. ds = {1, N}
  5. for n in range(2, int(N**0.5) + 1):
  6. if N % n == 0:
  7. ds.update({n, N // n})
  8. return ds
  9. lim = int(text)
  10. ans1, ans2 = None, None
  11. n = 830_000
  12. while ans1 is None or ans2 is None:
  13. ds = divisors(n)
  14. if ans1 is None and sum(ds) > lim // 10:
  15. ans1 = n
  16. if ans2 is None and sum(d for d in ds if n // d <= 50) > lim // 11:
  17. ans2 = n
  18. n += 1