Pagini recente » Cod sursa (job #1641846) | Cod sursa (job #1873) | Cod sursa (job #562056) | Cod sursa (job #2466932) | Cod sursa (job #822829)
Cod sursa(job #822829)
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstring>
#include <string>
#include <vector>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <cassert>
#include <cctype>
#include <cstdlib>
#include <algorithm>
using namespace std;
int N, M;
int main()
{
ifstream cin("dreptunghiuri.in")
ofstream cout("dreptunghiuri.out)
cin >> N >> M;
N--;
M--;
long long ans = 0;
for(int i = 1; i <= N; i++)
for(int j = 1; j <= M; j++) {
ans += (long long)(N - i + 1) * (M - j + 1);
}
for(int i = 1; i <= N; i++)
for(int j = 1; j <= M; j++) {
int sz = i + j;
long long rot = min(i, j);
if(rot > 1)
rot = (rot - 1) * 2 + 1;
ans += (long long)max(0, N - sz + 1) * max(0, M - sz + 1) * rot;
}
cout << ans << endl;
cin.close();
cout.close();
return 0;
}