Cod sursa(job #3367371)

Utilizator _someone_Lupulescu Vlad _someone_ Data 7 octombrie 2026 11:31:35
Problema Pairs Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.15 kb
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("pairs.in");
ofstream fout("pairs.out");
int v[1000001];
vector <int> ciur;
void make_cuir()
{
v[0]=1;
v[1]=1;
for(int i=2;i<=1000000;i++)
{
if(v[i]==0)
{
ciur.push_back(i);
for(int j=2;j*i<=1000000;j++)
{
v[i*j] = 1;
}

}

}
}

bool p_intre_ele(int a, int b)
{
    int  i = 0;
    for(i=0;i<ciur.size()&&ciur[i]<=min(a,b);i++)
    {
        if(a%ciur[i]==0&&b%ciur[i]==0)
            return 0;
    }
    return 1;
}
int main()
{

    make_cuir();
    int n;
    fin>>n;

    int s=0;
    int sir[n];
    for(int i=0;i<n;i++)
        fin>>sir[i];

    for(int i=0;i<n;i++)
    {
        for(int j=i+1;j<n;j++)
        {
            if(v[sir[i]] == 0 || v[sir[j]] == 0)
            {
            if(max(sir[i],sir[j]) % min(sir[i],sir[j])==0)
            {

            }
            else
            {
            s++;
            }

            }
            else
            if(p_intre_ele(sir[i],sir[j]))
            {
            s++;
            }

        }
    }
    cout<<s;
    fout<<s;
    return 0;
}