Cod sursa(job #2952238)

Utilizator gabriel.9619Gabriel Stefan Tita gabriel.9619 Data 8 decembrie 2022 20:34:21
Problema Mins Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
using namespace std;
ifstream fin("mins.in");
ofstream fout("mins.out");
long long nr, x;
int c[1000001], ok[1000001], nrd[1000001];
int main()
{
    int a, b, i, j, n;
    fin>>a>>b;
    a--;
    b--;
    n=min(a, b);
    for(i=2;i<=n;i++)
    {
        if(c[i]==0)
        {
            for(j=i+i;j<=n;j+=i)
            {
                c[j]=1;
                nrd[j]++;
                if(j%(i*i)==0)
                {
                    ok[j]=1;
                }
            }
            nrd[i]=1;
        }
        if(ok[i]==0)
        {
            x=(a/i)*1LL*(b/i);
            if(nrd[i]%2==1)
            {
                nr+=x;
            }
            else
            {
                nr-=x;
            }
        }
    }
    nr=a*1LL*b-nr;
    fout<<nr;
}