Pagini recente » Cod sursa (job #1418895) | Cod sursa (job #58530) | Cod sursa (job #2205297) | Cod sursa (job #1126641) | Cod sursa (job #1108905)
using namespace std;
#include <fstream>
#define NMAX 1000005
ifstream fin("mins.in");
ofstream fout("mins.out");
int N,M,C,D;
long tot[NMAX];
long long S;
int GCD(int A,int B)
{
if(!B)
return A;
return GCD(B,A%B);
}
int main(void)
{
int i, j;
fin>>C>>D;
N=max(C,D);
M=min(C,D)-1;
for(i=1;i<=M;i++)
tot[i]=i;
for (i = 2; i <= M; ++i)
if (tot[i]==i)
{
tot[i]=i-1;
for (j = i+i; j <= M; j += i)
tot[j]=tot[j]/i*(i-1);
}
for(i=1;i<=M;i++)
S=S+1LL*tot[i];
S=2*S-1;
for(int i=M;i<N;i++)
for(int j=1;j<M;j++)
if(GCD(i,j)==1)
S++;
fout<<S<<"\n";
return 0;
}