Advertisement
Vladislav_Bezruk

Some task

Nov 15th, 2020 (edited)
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.61 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<math.h>
  3.  
  4. bool prime[5001];
  5.  
  6. int n , s , i , j;
  7.  
  8. void rozl(int n) {
  9.     bool k = false;
  10.     int i;
  11.    
  12.     if (prime[n] == false) {
  13.         s++;
  14.         n--;
  15.         if (prime[n] == false) {
  16.             s += n;
  17.             k = true;
  18.         }
  19.     }
  20.    
  21.     if (k == false) {
  22.         for (i = sqrt(n) ; i <= n ; i++)
  23.         if (n % i == 0) {
  24.             break;
  25.         }
  26.         rozl(i);
  27.         rozl(n / i);       
  28.     }
  29.  
  30. }
  31.  
  32. int main() {
  33.    
  34.     scanf("%i",&n);
  35.     prime[1] = false;
  36.    
  37.     for (i = 2 ; i <= sqrt(n) ; i++)
  38.     if (prime[i] == false)
  39.     for (j = 2 ; j <= n / i ; j++)
  40.     prime[j * i] = true;
  41.    
  42.     rozl(n);
  43.    
  44.     printf("%i",s);
  45.    
  46.     return 0;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement