Pagini recente » Cod sursa (job #590208) | Cod sursa (job #1429921) | Cod sursa (job #909683) | Cod sursa (job #2132559) | Cod sursa (job #912193)
Cod sursa(job #912193)
#include <fstream>
using namespace std;
ifstream fin("dreptunghiuri.in");
ofstream fout("dreptunghiuri.out");
int N, M;
long long answer = 0;
int gcd(int a, int b);
int main() {
fin >> N >> M;
for (int a = 1; a < N; ++a) {
for (int b = 0; b < M; ++b) {
for (int i = 1; a * i < N; ++i) {
for (int j = 1; a * i + b * j < N && b * i + a * j < M; ++j) {
if (gcd(i, j) == 1) {
answer += 1LL * (N - (a * i + b * j)) * (M - (b * i + a * j));
}
}
}
}
}
fout << answer;
return 0;
}
inline int gcd(int a, int b) {
return (b ? gcd(b, a % b) : a);
}