Cod sursa(job #3316005)

Utilizator tudorbconstantinBordei Tudor-Constantin tudorbconstantin Data 16 octombrie 2025 20:17:41
Problema Fractii Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <iostream>
#include <vector>
#include <algorithm>
#include <cassert>
#include <fstream>
#include <cmath>
#include <numeric>

std::vector<int> primes(const int n)
{
    std::vector<int> result = {};
    std::vector<int> vec = {};

    for(int i = 2; i <= n; ++i) {
        vec.push_back(i);
    }

    while(vec.size() > 0) {
        int elem = vec[0];
        result.push_back(elem);
        vec.erase(std::remove_if(vec.begin(), vec.end(), [&](const auto &x){ return x % elem == 0; }), vec.end());
    }

    return result;
}

int main(int argc, char **argv)
{
#ifndef TEST
    std::ifstream f("fractii.in");
    assert(f.is_open());

    int n;
    f >> n;
    f.close();
#else
    int n = atoi(argv[1]);
#endif
    int nr = 0;

    for (int i = 1; i <= n; ++i) {
        for(int j = 1; j <= n; ++j) {
            if(std::gcd(i,j) == 1) {
                ++nr;
            }
        }
    }

#ifndef TEST
    std::ofstream o("fractii.out");
    o << nr;
    o.close();    
#else
    return nr;
#endif

    return 0;
}