Cod sursa(job #3315989)

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

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 = (2*(n-1))+1;
    for(int i = n; i >= 2; --i) {
        for(int j = n; j >= 2; --j) {
            if(i==j) continue;

            bool irreducible = true;
            for(int k = std::min(i,j); k >= 2; --k) {
                if(i%k == 0 && j%k == 0) {
                   irreducible = false;
                }
            }
            if(irreducible) {
                ++nr;
            }
        }
    }

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

    return 0;
}