题目
传送门: 百度AI小课堂-矩阵问题
描述等等…
由于当前状态不佳, 后期补上
解决
分析
画出来, 可以看出是左上角的值加上右下角的值之后乘以范围的数量, 对最终的结果求模即可
设计
长: b - a + 1
宽: d - c + 1
左上角值: a + c - 1
右下角值: b + d - 1
最终结果: (长 * 宽 * (左上角 + 右下角)) % 题目要求的值
由于会超范围, 所以注意尽量每一步都要小心范围
编码
#include <bits/stdc++.h>
using namespace std;
#define SP 332748118
int main(void) {
long height, width;
long left_up, right_down;
long a, b, c, d;
cin >> a >> b >> c >> d;
height = (b - a + 1) % SP;
width = (d - c + 1) % SP;
left_up = (a + c - 1);
right_down = (b + d - 1);
long result = (((height * width) % SP) * ((left_up + right_down) % SP)) % SP;
cout << result << endl;
}
结果
总结
很明显的规律问题 最后提示, 做题时量力而行, 比赛中没有那么多的时间