0
点赞
收藏
分享

微信扫一扫

例1:统计方形(数据加强版)

ivy吖 2022-02-06 阅读 51

题目描述

输入格式

输出格式

输入输出样例

输入 #1

输出 #1

分析:

确定一个方形需要四个点,但在方格纸上确定一个方形,只需要两个点即可(位于任一对角线的两点),至于是正方形还是矩形可以根据横纵距离判断,但直接枚举两个点不能过掉这道题目,所以我们可以只枚举一个点,这里我们选择枚举右下的顶点,过该点作一条斜率为1的直线,那么位于这条直线上且处在该点右上方的所有点都可以与该点组成一个正方形,反之所有不满足这个条件的点与该点组成的就是矩形,代码如下:
 

#include<iostream>
using namespace std;
int n,m;
long long res1,res2;
int main()
{
	cin>>n>>m;
	for(int i=0;i<=n;i++)
	{
		for(int j=0;j<=m;j++)
		{
			res1+=min(i,j); // 正方形
			res2+=i*j-min(i,j); 
		}
	}
	cout<<res1<<' '<<res2;
	return 0;
 } 
举报

相关推荐

0 条评论