美文网首页
02 洛谷 P1003 铺地毯

02 洛谷 P1003 铺地毯

作者: _Mirage | 来源:发表于2020-07-22 02:21 被阅读0次

题目链接

这题也很简单,但是思路必须要能转过来,不能死脑筋。

我一共提交了两次,第二次提交正确。

  1. 第一次提交错误信息: 图片.png
    第一次提交代码: 图片.png

RE(run time error) 通常是表示使用了不合法的内存,很可能是数组越界等导致程序崩溃。

看看题目数据范围: 图片.png
对于100%的数据。是可能达到10^5的。

而我在第一次做题的过程中,使用的是完全模拟的方法,需要用二维数组来模拟地毯的铺设:第一张地毯铺上去就给所有范围的二维数组赋值1,第二张……赋值2, 以此类推。
那么就需要我们的二维数组有足够大来模拟所有的数据。但是我测试过,我们本地的编译器在申请超过20000×20000大小的数组后就会编译出错了(洛谷支持的更小),然后我不得不把数组开到满足50%数据的大小:100,我开了个1000×1000的数组,那么当然对于剩下的50%的数据超过了数组的索引范围自然会产生RE的错误了。

  1. 知道了数组大小的限制后,我开始思考正确的方法:其实根本不需要完全模拟整个过程,只需要保存下来每个输入数据的信息,然后倒着去判断所给数据是否在输入数据的范围内即可。而保存所有输入数据的信息只需要使用二维数组即可:最大 图片.png

    显然已经满足了题目要求。

    再次提交,已经完全正确 图片.png

代码:

#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
typedef long long ll;

int nums[10002][5];

void solve(int n, int x, int y) {
    for(int i = n - 1; i >= 0; i--) {
        if(x >= nums[i][0] && x <= nums[i][0] + nums[i][2] &&
           y >= nums[i][1] && y <= nums[i][1] + nums[i][3]) {
            printf("%d", i + 1);
            return;
        }
    }
    printf("-1");
}

int main(int argc, char const *argv[])
{
    int n, x, y;
    scanf("%d", &n);
    for(int i = 0; i < n; i++) {
        scanf("%d%d%d%d", &nums[i][0], &nums[i][1], &nums[i][2], &nums[i][3]);
    }
    scanf("%d%d", &x, &y);
    solve(n, x, y);

    return 0;
}

相关文章

  • 02 洛谷 P1003 铺地毯

    题目链接 这题也很简单,但是思路必须要能转过来,不能死脑筋。 我一共提交了两次,第二次提交正确。 第一次提交错误信...

  • P1003地毯问题

    题目的意思。输入如下31 0 2 30 2 3 32 1 3 32 2 输出如下3 题目的要求如图: 输入的第一行...

  • 天匠真丝地毯首创全国范围上门试铺

    天匠地毯生产和出口手工真丝地毯、波斯地毯、土耳其地毯和羊毛地毯30年,在国内首创全国范围上门试铺服务,由毯圈第一帅...

  • 感受

    走在地毯上 感觉软绵绵 干净的地毯让人赏心悦目 如果疏于打扫 反而不如不铺

  • 儿童房手工地毯推荐

    你家的儿童房不知道铺的什么地毯 儿童房要铺手工地毯这个应该不必再多说了吧 没有甲醛和空气污染 给孩子一个健康的生活...

  • 洛谷计划

    洛谷是IT生认可度较高的一个网站,有各种题目以及专业术语,是刷题的一个好地方,但是对基础要求还算挺高,因此需要在...

  • 晓兰的成功日记20201116

    成功的监工铺工地毯,装修进度又往前迈进一步。两夫妻一天可以铺200~300平方米地毯,每平方米4元。算下来夫妻俩一...

  • 美丽的落叶

    晚饭过后,我从窗户往外望去,突然,我发现小区里铺满了五颜六色的地毯。咦?这些地毯子是谁铺的呢? 原来...

  • 几个高精度模板

    模板来自洛谷及Acwing:Acwing洛谷 后续增加注释以及相关代码改进 高精度加法 高精度减法 高精度乘法 高...

  • 家装|货比三家

    我约了下午看设计,修改讨论家具搭配的方案和颜色。也纠结要不要铺地毯。 铺地毯确实好看,可是不容易清洁。不铺还行,打...

网友评论

      本文标题:02 洛谷 P1003 铺地毯

      本文链接:https://www.haomeiwen.com/subject/ryinkktx.html