Pagini recente » Cod sursa (job #510764) | Cod sursa (job #393951) | Cod sursa (job #2204465) | Cod sursa (job #1028595) | Cod sursa (job #2875463)
#include <iostream>
#include <fstream>
#include <bitset>
#define int long long
#pragma GCC optimize ("Ofast")
using namespace std;
ifstream fin("mins.in");
ofstream fout("mins.out");
const int N = 1e6;
int ciur[N + 1];
bitset <N + 1> mpp; // nu vrem niciun factor la o putere mai mare de doi
signed main(){
int c, d;
fin >> c >> d;
c--, d--;
if(c > d) swap(c, d);
int ans = c * d;
for(int i = 2; i <= c; i++){
if(!ciur[i]){
for(int j = i; j <= c; j += i) ciur[j]++;
for(int j = i * i; j <= c; j += i * i) mpp[j] = 1;
}
if(!mpp[i]){
// PINEX:
if(ciur[i] % 2 == 0) ans += (c / i) * (d / i);
else ans -= (c / i) * (d / i);
}
}
fout << ans;
return 0;
}