今日打卡:P2241 统计方形(数据加强版)

呃,很抱歉有快大半年没更新了,主要是精力有限,不过有空的话我都会加紧更哒!

这么久没来洛谷,这......我哩个天翻地覆啊,我曾经的洛谷呢?!(已崩溃)

不过我看洛谷现在的题单挺好的,来试试《暴力枚举》(嗯兑,暴力的艺术)

今天的运势......

好恐怖,吓哭了

好啦话不多说,上题解!!!


对于这道题,我们先考虑第一个问题

一、算正方形的个数

1.如果我们固定了正方形的右下角(i,j),你能不能算出此时可能的正方形的个数?

2.显然,此时答案为Min(i,j).

3.所以可以枚举右下角,计算此时答案,求和即可。

二、算长方形个数

1.其实算长方形并不常见,但算矩形大家应该经常遇到,所以如果你会算矩形,再联系第一个问题,那答案就转化为 矩形个数-正方形个数.

2.像求解正方形个数一样,固定矩形右下角(i,j),显然此时矩形个数为i*j.

3.同理,求和即可.

时间复杂度:O(n*m),是挺慢的,其实可以写成一个式子

代码如下:

cpp 复制代码
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
int main()
{
	ll n,m,i,j,sum=0,sum1=0;
	cin>>n>>m;
	for(i=1;i<=n;i++)
	{
	  for(j=1;j<=m;j++)
	  {
	    sum+=min(i,j);
	    sum1+=i*j;
	  }
	}
	
	cout<<sum<<" "<<sum1-sum<<endl;
	return 0;
}

最后,还是向大家道歉,嗯,对不起!!!(求放过)

相关推荐
一木 之林4 小时前
五、C++新特性、关键字与编译原理
java·jvm·算法
万法若空5 小时前
对数恒等式
人工智能·算法·机器学习
AI小码6 小时前
如何让AI帮你构建项目?七级方法
人工智能·算法·计算机·ai·程序员·大模型·编程
1000世界小札6 小时前
排序算法全景总结:从 O(n²) 到 O(n log n),再到线性时间(附完整对比与选型指南)
数据结构·算法·排序算法
一直C6 小时前
【Linux应用编程】深入理解Linux多任务机制:进程原理、状态转换与进程控制实战
linux·开发语言·算法·ubuntu·vim·visual studio code
玉树临风ives6 小时前
atcoder ABC 472 题解
数据结构·c++·算法
AI服务老曹6 小时前
抽烟识别算法接入 AI 视频分析平台的流程与误报优化指南
人工智能·算法·音视频
阳明山水7 小时前
销量预测2025—2026:技术演进、实证发现与系统架构的系统性综述
人工智能·深度学习·算法·机器学习·架构
伯远医学7 小时前
RIP-seq 高分文献案例分享
java·前端·javascript·人工智能·算法·eclipse·html
啊嘞嘞?7 小时前
力扣(LRU缓存)
算法·leetcode