Cod sursa(job #2314315)
| Utilizator | Data | 8 ianuarie 2019 12:24:36 | |
|---|---|---|---|
| Problema | Mins | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <fstream>
using namespace std;
ifstream in("mins.in");
ofstream out("mins.out");
int c,d,a[1000001],r;
bool ok[1000001];
int main()
{ in>>c>>d;
c--,d--;
for(int i=1;i<=min(c,d);i++)
a[i]=1;
for(int i=2;i<=min(c,d);i++)
if(!ok[i])
for(int j=i;j<=min(c,d);j+=i)
a[j]*=-1,ok[j]=1;
for(int i=2;i*i<=min(c,d);i++)
for(int j=1;i*i*j<=min(c,d);j++)
a[i*i*j]=0;
r=c*d;
for(int i=2;i<=min(c,d);i++)
r+=a[i]*(c/i)*(d/i);
out<<r;
in.close();
out.close();
return 0;
}
