Pagini recente » Cod sursa (job #2982502) | Cod sursa (job #2964904) | Cod sursa (job #2583310) | Cod sursa (job #1411692) | Cod sursa (job #2590441)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("dreptunghiuri.in");
ofstream fout ("dreptunghiuri.out");
int n,m,i,j,k;
double get_dist (double x, double y, double x2, double y2){
return (x - x2) * (x - x2) + (y - y2) * (y - y2);
}
int main (){
fin>>n>>m;
long long sol = 0;
for (i=1;i<n;i++)
for (j=1;j<m;j++){
/// fixez un punct de pe latime
int cnt = 1;
for (int k=1;k<i;k++){
int b = -j;
int c = k * i - k * k;
int delta = b*b - 4*c;
if (delta < 0)
continue;
if (sqrt(delta) != (int)sqrt(delta))
continue;
int val = sqrt(delta);
if ( (j + val) % 2 == 0 && (j-val)/2 > 0 && (j+val)/2 < j)
cnt++;
if (delta && (j - val) % 2 == 0 && (j-val)/2 > 0 && (j-val)/2 < j)
cnt++;
}
sol += 1LL * cnt * (n-i) * (m-j);
}
fout<<sol;
return 0;
}