Cod sursa(job #2102584)

Utilizator mirelPmirel p mirelP Data 9 ianuarie 2018 00:37:47
Problema Pairs Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.08 kb
#include <fstream>
#include <vector>

using namespace std;
ifstream fin("pairs.in");
ofstream fout("pairs.out");
vector<int>v;
int cmax,n,i,j,s,k,x,l,d;
bool ok=1;
int main()
{
    fin>>n;
    for(i=0;i<n;i++)
    {
        fin>>x;
        if(x>cmax)
            cmax=x;
        v.push_back(x);
    }
    vector<int>f;
    f.push_back(2);
    l=0;
    for(i=3;i<=cmax/2;i=i+2)
    {
        for(d=1;d*d<i;d=d+2)
        {
            if(i%d==0)
                k=k+2;
        }
        if(d*d==i)
            k++;
        if(k==2)
        {
            f.push_back(i);
            l++;
        }
        k=0;
    }
    for(i=0;i<n;i++)
    {
        for(j=i;j<n;j++)
        {
            for(k=0;k<=l;k++)
            {
                if(f[k]>v[i] or f[k]>v[j])
                    break;

                if(v[i]%f[k]==0 && v[j]%f[k]==0)
                {
                    ok=0;
                    break;
                }
            }
            if(ok)
                s++;
            ok=1;
        }
    }
    fout<<s;
    return 0;
}