题解 | 数方格
2025-12-07 13:27:35
发布于:江苏
78阅读
0回复
0点赞
题目大意
求出一个 的矩阵内有多少个正方形。
解题思路
先求出一个 的矩阵内有多少个边长为 的正方形,横坐标有 种情况,纵坐标有 种情况,所以一共有 种情况。枚举正方形的边长 ,再依次累加 ,而正方形边长的最大值为 和 的最小值,因为如果 ,那么这个矩阵就放不下这个正方形了。
参考代码
#include<iostream>
#define ll long long
using namespace std;
ll n,m,ans;
int main(){
cin>>n>>m;
for(ll i=1;i<=min(n,m);++i){
ans+=(n-i+1)*(m-i+1);
}
cout<<ans;
return 0;
}
全部评论 3
6
1周前 来自 江苏
06
1周前 来自 江苏
06
1周前 来自 江苏
0








有帮助,赞一个