题目206 矩形的个数
矩形的个数
时间限制:1000 ms | 内存限制:65535 KB
难度:1
- 描述
- 在一个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
- 来源
- FOJ月赛-2007年3月
- 分析:这道题有两种方法:
- 第一种:(1+2+3+4+5……+n)*(1+2+3+4+5+6+7+8+……m)
- #include<stdio.h>
int main()
{
long long m,n,i,j,sum;
while(scanf("%lld%lld",&m,&n) != EOF)
{
sum = 0;
for(i = 1; i <= m; i++)
for(j = 1; j <= n; j++)
{
sum +=i*j;
}
printf("%lld\n",sum);
}
return 0;
} - 这种我的超时里 了!
- 第二种:m*(m+1)*n*(n+1)/4
- #include<stdio.h>
int main()
{
long long m,n,i,j,sum;
while(scanf("%lld%lld",&m,&n) != EOF)
{
sum = m * (m + 1) * n * (n + 1)/4;
printf("%lld\n",sum);
}
return 0;
} - 这种方法过了!
浙公网安备 33010602011771号