boris-vlasenko

25-33

Sep 27th, 2020
764
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. # ~ 33) (Б.С. Михлин) Напишите программу, которая ищет среди целых чисел, принадлежащих числовому
  2. # ~ отрезку [286564; 287270], числа, имеющие максимальное количество различных делителей. Если
  3. # ~ таких чисел несколько, то найдите максимальное из них. Выведите количество делителей
  4. # ~ найденного числа и два наибольших делителя в порядке убывания.
  5.  
  6.  
  7. def count_of_divs(x):
  8.     k = 0
  9.     for i in range(1,x+1):
  10.         if x % i == 0:
  11.             k += 1
  12.     return k
  13.    
  14. def get_all_divs(x):
  15.     res = []
  16.     for i in range(1,x+1):
  17.         if x % i == 0:
  18.             res.append(i)
  19.     res.sort(reverse=1)
  20.     return res
  21.        
  22.    
  23. mk = 0
  24. mdd = []
  25.  
  26. for x in range(286564,287270+1):
  27.     dd = get_all_divs(x)
  28.     k = len(dd)
  29.     if k >= mk:
  30.         mk = k
  31.         mdd = dd
  32.    
  33.        
  34. print(mk,*mdd[:2])
  35.        
  36.  
RAW Paste Data