P1003 [NOIP 2011 提高组] 铺地毯

题目链接:

P1003 NOIP 2011 提高组 铺地毯 - 洛谷

最佳思路:

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    cin >> n;
    int a[n],b[n],x[n],y[n];
    for(int i = 0;i< n;i++)
    {
        cin >>a[i]>>b[i]>>x[i]>>y[i];
    }
    for(int i = n - 1;i >= 0;i--)
    {
        int dx,dy;
        cin >> dx>>dy;
        if(a[i] <= dx && dx <= a[i] + x[i] &&dy >= b[i] && dy <= b[i] + y[i])
        {
            cout << i + 1;
            return 0;
        }
    }
    cout << -1;
    return 0;
}

a b x y这四个数组存放每一张毯子的信息

之后再倒着往回找,找到的第一个就是结果

cpp 复制代码
if(a[i] <= dx && dx <= a[i] + x[i] &&dy >= b[i] && dy <= b[i] + y[i])

这就代表这个点落在了这张毯子上;

如果没找到就是-1;

还要注意下标的偏移 进行修正+1即可

相关推荐
老师我太想进步了20262 小时前
【数据结构-4】算法美学之顺序表
数据结构·算法
风影同志783243 小时前
编码器是激活函数吗?—— 一个看起来很像、其实不是的类比
算法
UIU1143 小时前
P1481 魔族密码
c++·算法·动态规划
加宝的起点雷达6 小时前
40 条候选里 38 条来自同一个源,主卡整屏重样
人工智能·算法·创业
秋天的怀念_David6 小时前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法
闻缺陷则喜何志丹9 小时前
【C++特性】四种类型转
c++·算法·类型转换
喵本喵叁肆9 小时前
用 Boosting 把弱隐私算法炼成强隐私算法(英文原题:Boosting and Differential Privacy (FOCS 2010))
算法·集成学习·boosting
GrowingIO技术社区9 小时前
CDP、行为分析、归因与营销自动化有什么区别?
数据结构·数据挖掘·数据分析