Cod sursa(job #2846789)
Utilizator | Ionescu Maria mariaionescu2006 | Data | 9 februarie 2022 17:46:16 |
---|---|---|---|
Problema | Mins | Scor | 85 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin ("mins.in");
ofstream fout ("mins.out");
const int nmax=1000005;
int cnt[nmax],c,d;
int main()
{
fin >>c>>d;
c--;d--;
long long nrp=0;
for (int k=2;k<=min(c,d);k++)
{int x=1-cnt[k];
if (x==0) continue;
nrp+=1LL*x*(c/k)*(d/k);
for (int m=2*k;m<=min(c,d);m=m+k)
{cnt[m]+=x;}}
fout <<1LL*c*d-nrp;
return 0;
}