矩形的个数
时间限制: 1000ms内存限制:
128000KB 64位整型: Java 类名:
上一题 提交 运行结果 统计 讨论版 下一题
类型:
没有
添加
题目描述
在一个3*2的矩形中,可以找到6个1*1的矩形,4个2*1的矩形3个1*2的矩形,2个2*2的矩形,2个3*1的矩形和1个3*2的矩形,总共18个矩形。
给出A,B,计算可以从中找到多少个矩形。
输入
本题有多组输入数据(<
10000),你必须处理到EOF为止
输入2个整数A,B(1<=A,B<=1000)
输出
输出找到的矩形数。
样例输入
1 2
3 2
样例输出
3
18
题解:先考虑只有一行的情况,假设有b列 ,可以发现矩形长为b的有1个,b-1有2个,一直到长度为1,有b个 ,
则这有(b+b-1+...+2+1)
列则一样的情况,(a+a-1+...+2+1),那么有一行,长度为b的有b*a,两行有b*(a-1) 。
那么总共有(b+b-1+...+2+1)*(a+a-1+...+2+1)
(b+1)*b/2 * (a+1)*a/2
#include<stdio.h>
int main()
{
long long a,b;
while(scanf("%lld%lld",&a,&b)!=EOF)
{
printf("%lld\n",a*(a+1)*b*(b+1)/4);
}
return 0;
}