题目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;
}
这种方法过了!
posted @ 2012-05-09 21:15  牧童不吃蛋炒饭  阅读(264)  评论(0)    收藏  举报