Cod sursa(job #2491225)

Utilizator gheorghe_cristiGheorghe Florin Cristi gheorghe_cristi Data 12 noiembrie 2019 06:00:36
Problema Fractii Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <string>
#include <set>
#include <cstring>

using namespace std;

ifstream fin("fractii.in");
ofstream fout("fractii.out");

int n;
int sol[110];
long long c;

bool prime(int a,int b) {
    int r;
    while(b) {
        r=a%b;
        a=b;
        b=r;
    }
    if(a==1) return true;
    return false;
}

bool verificare(int pas) {
    for(int i=1;i<pas;++i)
        if(sol[pas]==sol[i] || !prime(sol[i], sol[pas])) return false;
    return true;
}


void backtrack(int pas) {
    if(pas==3) {
        c++;
    }
    else
        for(int i=1;i<=n;++i) {
            sol[pas] = i;
            if(verificare(pas)) backtrack(pas+1);
        }
}


int main()
{
    cin>>n;
    backtrack(1);
    cout<<c+1;
}