Pagini recente » Cod sursa (job #2753483) | Cod sursa (job #885300) | Cod sursa (job #2889732) | Cod sursa (job #1335190) | Cod sursa (job #936558)
Cod sursa(job #936558)
#include <fstream>
using namespace std;
ifstream in("dreptunghiuri.in");
ofstream out("dreptunghiuri.out");
inline long long cmmdc(long long x, long long y){
return y ? cmmdc(y, x % y) : x;
}
int main(){
long long n, m;
in >> n >> m;
long long rez = n * (n - 1) * m * (m - 1) / 4;
for (long long x = 1 ; x <= n ; x++)
for (long long y = 1 ; y <= m ; y++)
if (cmmdc(x , y) == 1)
for (long long a = 1 ; a * x <= n && a * y <= m ; a++)
for (long long b = 1 ; a * x + b * y <= n && a * y + b * x <= m ; b++)
rez += (n - a * x - b * y) * (n - a * y - b * x);
out << rez << "\n";
return 0;
}