1 条题解

  • 0
    @ 2025-8-24 21:56:43

    自动搬运

    查看原文

    来自洛谷,原作者为

    avatar Alex_Wei
    **

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

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

    以下是正文


    本题的数据范围可以直接模拟。

    当这个方格被覆盖的时候,标记该方格左上角的点。

    注意点:数据范围为 [1000,1000][-1000,1000],模拟时注意把 x,yx,y 值都加上 10001000

    #include<bits/stdc++.h>
    using namespace std;
    int m[2200][2200],ans,a,s,d,f;//m为该平面直角坐标系,ans为没有被覆盖的面积
    int main()
    {
    	for(int x=1;x<4;x++){
    		cin>>a>>s>>d>>f;
    		for(int y=a+1000;y<d+1000;y++)//x坐标 (注意此处是 < 而不是 <= ,因为标记的是点)
    			for(int z=s+1000;z<f+1000;z++){//y坐标
    				if(x<3)m[y][z]++,ans++;
    				if(m[y][z]&&x==3)ans--;//减去重叠部分 
    			}
    	}
    	cout<<ans;
    	return 0;
    }
    

    Upd:2019.12.11:\mathrm{Upd:2019.12.11:} 添加 Latex\mathrm{Latex},美化文章。

    • 1

    信息

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