矩形的个数
时间限制: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
大水题,int 过不了 ,要用 long long
两种方法,一是公式,二是循环算出1*1,1*2……的个数,再相加
第二种方法用c++会超时
01.#include<stdio.h>02.03.intmain()04.{05.longlonga, b;06.while(scanf("%lld%lld", &a, &b) != EOF)07.{08.printf("%lld\n", (a+1)*(b+1)*a*b/4);09.}10.return0;11.}
01.#include<stdio.h>02.intmain()03.{04.inta,b,i,j;05.longlongsum;06.while(scanf("%d%d",&a,&b)!=EOF)07.{08.sum=0;09.for(i=a;i>0;i--)10.for(j=b;j>0;j--)11.sum+=i*j;12.printf("%lld\n",sum);13.}14.return0;15.}
- 本题有多组输入数据(<10000),你必须处理到EOF为止
本文介绍了一种高效计算矩形数量的方法,包括公式法和循环遍历法,并提供了C++实现代码,讨论了int与long long数据类型的选择,特别强调了大数计算场景下数据类型的重要性。
737

被折叠的 条评论
为什么被折叠?



