题目答案:
18
题目解析:
暴力列举每一种情况。
1 个有球的袋子:(8)
2 个有球的袋子:(1, 7)(2, 6)(3, 5)(4, 4)
3 个有球的袋子:(1, 1, 6)(1, 2, 5)(1, 3, 4)(2, 2, 4)(2, 3, 3)
4 个有球的袋子:(1, 1, 1, 5)(1, 1, 2, 4)(1, 1, 3, 3)(1, 2, 2, 3)(2, 2, 2, 2)
5 个有球的袋子:(1, 1, 1, 1, 4)(1, 1, 1, 2, 3)(1, 1, 2, 2, 2)
故总方案数为 1 + 4 + 5 + 5 + 3 = 18。
#include <iostream>
using namespace std;
const int SIZE = 100;
int matrix[SIZE + 1][SIZE + 1];
int rowsum[SIZE + 1][SIZE + 1]; //rowsum[i][j]记录第 i 行前 j 个数的和
int m, n, i, j, first, last, area, ans;
int main()
{
cin >> m >> n;
for(i = 1; i <= m; i+