Blame view

NumberTheoryandCombinatorics/ProjectEuler/SummationOfPrimes/SumPrimes.cpp 1.23 KB
b29dd2ce0   Ronaldo   Updating the dire...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
  //
  // Created by ronal on 2/12/2023.
  // Problem description link.
  // https://www.hackerrank.com/contests/projecteuler/challenges/euler010/problem
  
  #include <bits/stdc++.h>
  #define N 1000000
  
  using namespace std;
  
  bool isPrime(unsigned long long n){
  
      if(n == 2 || n == 3){
          return true;
  
      }else if(n <= 1 || n % 2 == 0 || n % 3 == 0){
          return false;
      }else{
          for(int i = 5; i * i <= n; i += 6){
              if(n % i == 0 || n % (i + 2) == 0){
                  return false;
              }
          }
      }
      return true;
  }
  
  void PrimesNumbers(vector<unsigned long long> &primes, unsigned long long size){
      unsigned long long sum = 0;
      for(unsigned long long i = 0; i < primes.size(); i++){
          if( primes[i] <= size){
              sum += primes[i];
          }else{
              break;;
          }
      }
      cout << sum << "
  ";
  }
  
  int main(){
      ios_base::sync_with_stdio(false);
      cin.tie(NULL);
      vector<unsigned long long> primes;
      unsigned long long t, n;
      for(unsigned long long i = 0; i <= N; i++){
          if(isPrime(i)){
              primes.push_back(i);
          }
      }
      cin >> t;
      for(unsigned long long a0 = 0; a0 < t; a0++){
          cin >> n;
          PrimesNumbers(primes, n);
      }
      return 0;
  }