Advertisement
yuawn

algo2017_week11_Odd_sum_without_prime

Dec 17th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.19 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. #define pb push_back
  4. #define fo(n) for(int i=0;i<n;i++)
  5. #define fos(o,n) for(int i=o;i<=n;i++)
  6.  
  7. int Pow(long long x, int n, long long mod) {
  8.     long long Ans = 1, t = x;
  9.     while(n) {
  10.         if(n&1)
  11.             Ans *= t, Ans %= mod;
  12.         t *= t, t %= mod, n >>= 1;
  13.     }
  14.     return (int)Ans;
  15. }
  16.  
  17. int isPrime(int n) {
  18.     if(n == 2 || n == 3)    return 1;
  19.     if(n == 1)    return 0;
  20.     if(!(n & 1))    return 0;
  21.     int a, x, flag = 1, t;
  22.     for(a = 0; a < 2; a++) {
  23.         x = rand() % (n - 4) + 2;
  24.         t = Pow( x , n-1 , n );
  25.         if(t != 1)    return 0;
  26.     }
  27.     return 1;
  28. }
  29.  
  30. vector<int> p;
  31. map<int,bool> mp;
  32.  
  33. void build(){
  34.     p.pb(1);
  35.     p.pb(2);
  36.     p.pb(3);
  37.     p.pb(5);
  38.     p.pb(7);
  39.     mp[2] = 1;
  40.     mp[3] = 1;
  41.     mp[5] = 1;
  42.     mp[7] = 1;
  43.     int pri = 7;
  44.     for( int i = 4 ; pri < 100 ; i = 6 - i  ){
  45.         pri += i;
  46.         if( isPrime( pri ) ) p.pb(pri) , mp[pri] = 1;
  47.     }
  48. }
  49.  
  50. int main(){
  51.    
  52.     build();
  53.    
  54.     int T;
  55.     cin >> T;
  56.    
  57.     while( T-- ){
  58.         int a , b , ans = 0;
  59.         cin >> a >> b;
  60.        
  61.         fos( a , b ){
  62.             if( i % 2 == 0 ) continue;
  63.             if( (i&1) && !isPrime(i) ) ans += i;
  64.         }
  65.        
  66.         cout << ans << endl;
  67.     }
  68.    
  69.     return 0;
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement