思路:假设n<m,边长为n的正方形个数为:i(n-m+i)*
总的正方形数为:sigma [i(n-m+i)] (i=1,2……min{n,m})*
矩形个数为:n行有n+1条横边,m列有m+1条竖边,从横边和竖边中各选两条构成矩形,组合数Cn+1,2*Cm+1,2。长方形数=矩形数-正方形数
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
# define loop i=1;i<=num;i++
int main()
{
ll n, m,i;
cin >> n >> m;
ll num = n < m ? n : m;
ll d = abs(n-m);
ll square=0, rectangle=0;
for (loop)
square += i * (d + i);
rectangle = n* (n + 1)/2*m*(m+1)/2-square;
cout << square<<' '<<rectangle;
return 0;
}