My coding way (4)
1544 ワード
問題C:数方格
時間制限:1 Secメモリ制限:128 MB
タイトルの説明
n*m四角形の碁盤(1≦m,n≦100)が設けられている.(30%)
この碁盤に何個の正方形、何個の長方形(正方形を含まない)が含まれているかを求めます.
例えば、n=2、m=3の場合
正方形の個数は8個あります.すなわち、辺長が1の正方形は6つある.
辺の長さが2の正方形は2つあります.
長方形の個数は10個ある.
すなわち2*1の長方形は4つある.
1*2の長方形は3つあります.
3*1の長方形は2つあります.
3*2の長方形は1つあります.
入力
最初の行には、テストデータの個数である整数Tが入力される.2行目からT組のテストデータがあり、行ごとに2つの正の整数NとM(1<=n、m<=100)がある.
しゅつりょく
テストデータに対応して、ちょうどT行のテストデータがあって、各行は2つの数を含んで、それぞれ正方形の個数と長方形の個数で、2つの数の前に1つのスペースで隔てて、行末は余分なスペースがないでください.
サンプル入力
2
2 3
3 4
サンプル出力
8 10
20 40
O_Oは最初は数学の方法で法則を探そうとしたが、すぐに自分の数学が本当に悪いことに気づいた.ORZは方法を変えた.
時間制限:1 Secメモリ制限:128 MB
タイトルの説明
n*m四角形の碁盤(1≦m,n≦100)が設けられている.(30%)
この碁盤に何個の正方形、何個の長方形(正方形を含まない)が含まれているかを求めます.
例えば、n=2、m=3の場合
正方形の個数は8個あります.すなわち、辺長が1の正方形は6つある.
辺の長さが2の正方形は2つあります.
長方形の個数は10個ある.
すなわち2*1の長方形は4つある.
1*2の長方形は3つあります.
3*1の長方形は2つあります.
3*2の長方形は1つあります.
入力
最初の行には、テストデータの個数である整数Tが入力される.2行目からT組のテストデータがあり、行ごとに2つの正の整数NとM(1<=n、m<=100)がある.
しゅつりょく
テストデータに対応して、ちょうどT行のテストデータがあって、各行は2つの数を含んで、それぞれ正方形の個数と長方形の個数で、2つの数の前に1つのスペースで隔てて、行末は余分なスペースがないでください.
サンプル入力
2
2 3
3 4
サンプル出力
8 10
20 40
O_Oは最初は数学の方法で法則を探そうとしたが、すぐに自分の数学が本当に悪いことに気づいた.ORZは方法を変えた.
#include <stdio.h>
int main()
{
int all,maxl,maxh;
int square,box;
int l,h;
scanf("%d",&all);
for(;all>0;all--)
{
square=0;box=0;
scanf("%d %d",&maxl,&maxh);
for(l=1;l<=maxl;l++)
{
for(h=1;h<=maxh;h++)
{
if(l==h)
{
square+=(maxl-l+1)*(maxh-h+1);
}
else
{
box+=(maxl-l+1)*(maxh-h+1);
}
}
}
printf("%d %d
",square,box);
}
return 0;
}