Advertisement
Guest User

Untitled

a guest
Apr 21st, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.98 KB | None | 0 0
  1. # -*- coding: utf-8 -*-
  2. #апрыерка нечётных чисео на простоту
  3. def prime(n):
  4.    if n % 2 == 0:
  5.         return n == 2
  6.    d = 3
  7.    while d * d <= n and n % d != 0:
  8.        d += 2
  9.    return d * d > n
  10.  
  11. n = int(input())
  12. k = int(input())
  13. m = [0 for i in range(k)]
  14. #заполненние массива делителями из условия
  15. for i in range(k):
  16.     m[i] = int(input())
  17.  
  18. ms = []
  19. for i in range(k):
  20.     if (prime(m[i])) and not (m[i] in ms):
  21.         ms.append(m[i])
  22. ms = sorted(ms)
  23. #f101 - массив с первыми 101 простыми числами
  24. f101 = []
  25. counter = 2
  26. while len(f101) < 101:
  27.     if prime(counter):
  28.         f101.append(counter)
  29.     counter += 1
  30.    
  31. answer = -1
  32. for i in range(len(ms)):
  33.     if ms[i] == 1:
  34.         answer = 2
  35.         break
  36.     if ms[i] != f101[i]:
  37.         answer = f101[i] ** 2
  38.         break
  39. if (answer == -1) and (ms[len(ms)-1]**2 < n):
  40.     answer = f101[len(ms)]**2
  41. print(answer)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement