Cod sursa(job #981112)

Utilizator dariusdariusMarian Darius dariusdarius Data 6 august 2013 14:08:26
Problema Mins Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include<fstream>
#include<algorithm>
#define inf -1000005
using namespace std;
int v[1000005];
int main()
{
    freopen("mins.in","r",stdin);
    freopen("mins.out","w",stdout);
    long long n,m,S;
    scanf("%lld%lld",&n,&m);n--;m--;
    S=n*m;
    for(long long i=2;i<=n;i++)
        if(!v[i])
        {
            S-=n*m/i/i;
            for(int j=i;j<=n;j+=i)
                v[j]++;
            for(int j=i*i;j<=n;j+=i*i)
                v[j]=inf;
        }
        else
            if(v[i]>1)
                if(v[i]&1)
                    S-=n*m/i/i;
                else
                    S+=n*m/i/i;
    printf("%lld\n",S);
    return 0;
}