Pagini recente » Cod sursa (job #811108) | Cod sursa (job #308222) | Cod sursa (job #2251767) | Cod sursa (job #2068094) | Cod sursa (job #2197555)
#include <stdio.h>
char ciur[1000006];
int cnt(int x, int c, int d) {
return ((c - 1) / x) * ((d - 1) / x);
}
int main() {
FILE *fin, *fout;
fin = fopen("mins.in", "r");
fout = fopen("mins.out", "w");
int c, d, i, j;
long long sol;
fscanf(fin, "%d%d", &c, &d);
sol = 0;
for (i = 2; i <= 1000000; i++) {
if (ciur[i] == 0) {
for (j = 2 * i; j <= 1000000; j += i)
ciur[j]++;
sol += cnt(i, c, d);
}
else
sol -= cnt(i, c, d) * (ciur[i] - 1);
}
fprintf(fout, "%lld", 1ll * (c - 1) * (d - 1) - sol);
return 0;
}