题目如下
统计方形(数据加强版)
题目背景
1997年普及组第一题
题目描述
有一个 n×m 方格的棋盘,求其方格包含多少正方形、长方形(不包含正方形)。
输入格式
一行,两个正整数 n,m(n≤5000,m≤5000)。
输出格式
一行,两个正整数,分别表示方格包含多少正方形、长方形(不包含正方形)。
样例 #1
样例输入 #1
2 3
样例输出 #1
8 10
30分
我的代码如下
using namespace std;
int main() {
int n, m;
cin >> n >> m;
long long s = 0;
for (int i = 1; i <= min(n, m);i++)
s += (n - i + 1) * (m - i + 1);
long long r = n * (n + 1) / 4 * m * (m + 1) - s;
cout << s << " " << r << endl;
return 0;
}
求指点