1 条题解

  • 0
    @ 2025-8-24 21:26:21

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar 0凌0
    退役oier

    搬运于2025-08-24 21:26:20,当前版本为作者最后更新于2018-11-04 21:08:21,作者可能在搬运后再次修改,您可在原文处查看最新版

    自动搬运只会搬运当前题目点赞数最高的题解,您可前往洛谷题解查看更多

    以下是正文


    看到各位大佬手算公式,身为蒟蒻的我早已吓呆了
    题目说的好,m,n<100,~~常言“暴力出奇迹”,~~我立刻想到了:

    枚举

    怎么枚举呢,显然,我可以先枚举左上的点,再枚举右下的点,坐标一减,是不是正方形显而易见
    号称全国NO.1易懂的代码:

    #include<bits/stdc++.h>
    using namespace std;
    int m,n,z,c,i,j,k,l;    //z用来记正方形个数,c来记长方形
    int main()
    {
    	cin>>m>>n;           //输入
    	for(i=0;i<=m;i++)    //枚举
    	for(j=0;j<=n;j++)    //枚举
    	for(k=i+1;k<=m;k++)  //还是枚举
    	for(l=j+1;l<=n;l++)  //仍然是枚举
    	if(k-i==l-j)z++;     //是正方形
    	else c++;            //是长方形
    	cout<<z<<" "<<c;     //输出
    }
    
    • 1

    信息

    ID
    541
    时间
    1000ms
    内存
    125MiB
    难度
    1
    标签
    递交数
    0
    已通过
    0
    上传者