正方形长方形的个数

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_43627106/article/details/100166909

设有一个n*m方格的棋盘(1≤m,n≤100)。
求出该棋盘中包含多少个正方形、多少个长方形(不包括正方形)。
例如:当n=2,m=3时
正方形的个数有8个;即边长为1的正方形有6个;
边长为2的正方形有2个。
长方形的个数有10个
即2*1的长方形有4个
1*2的长方形有3个
3*1的长方形有2个
3*2的长方形有1个

#include<iostream>
#include<cstdio>
#define t 10000+10
using namespace std;
int main()
{
    int a[t];
    int n,m,x=0,y=0;
    cin>>n>>m;
    for(int i=0;i<n;i++) a[i]=(n-i)*(m-i);
    y=n*m*(n+1)*(m+1)/4;
	for(int i=0;i<n;i++) x+=a[i];
    cout<<x<<","<<y-x;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_43627106/article/details/100166909
今日推荐