Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Description
给你一个高为n ,宽为m列的网格,计算出这个网格中有多少个矩形,下图为高为2,宽为4的网格.
![](http://7xjob4.com1.z0.glb.clouddn.com/30eb0263b48b7de077ccf5a73574b88d)
Input
第一行输入一个t, 表示有t组数据,然后每行输入n,m,分别表示网格的高和宽 ( n < 100 , m < 100).
Output
每行输出网格中有多少个矩形.
Sample Input
2 1 2 2 4
Sample Output
3 30
程序分析:虽然此题说的是用暴力求解、打表方法求解,可是我觉得根本就没用用到。主要还是像数学找规律一样,我总结出来的规律就是n*(n+1)/2*m*(m+1)/2.
程序代码:
#include<iostream> using namespace std; int main() { int T,n,m,sum; cin>>T; while(T--) { cin>>n>>m; sum=n*(n+1)/2*m*(m+1)/2; cout<<sum<<endl; } return 0; }