您当前的位置: 首页 >  Java

统计方格区域内正方形和长方形的个数(洛谷P1548题题解,Java语言描述)

星拱北辰 发布时间:2020-01-28 21:11:14 ,浏览量:2

题目要求

P1548题目要求

在这里插入图片描述 在这里插入图片描述

分析

这题,一看就懵,因为一看就需要推公式,很麻烦……

此时发现本题是洛谷红题哈哈哈,还没“高性能”标签,那就暴力吧!!!

注意只要区域是正方形就不是长方形(此题的长方形不包含正方形诶),就可以if…else… 计个数就好啦。

但明显可以O(1)的公式秒题,公式是啥呢,这是推理步骤(别人写的,我没推): 在这里插入图片描述

据此得到的C++代码:

#include
#include
#include
using namespace std;
int n,m;
int main()
{
    cin>>n>>m;
    int nn=min(n,m);
    int z=m*n*(nn+1)+nn*(nn+1)*(2*nn+1)/6-(m+n)*nn*(nn+1)/2;
    int c=n*(n+1)/2*m*(m+1)/2-z;
    cout            
关注
打赏
1688896170
查看更多评论
0.4466s