题解
【基础】棋盘方格
1 条题解
-
0
#include <iostream> #include <algorithm> // 用于min函数 using namespace std; int main() { int n, m; cin >> n >> m; // 计算正方形数量 int square = 0; int max_side = min(n, m); for (int k = 1; k <= max_side; ++k) { square += (n - k + 1) * (m - k + 1); } // 计算所有长方形(含正方形)的数量 long long total = (long long)n * (n + 1) / 2 * m * (m + 1) / 2; // 长方形(不含正方形)数量 = 总数 - 正方形数 int rect = total - square; cout << square << " " << rect << endl; return 0; }
- 1