首页 > 其他 > 详细

洛谷 P1003 铺地毯

时间:2019-09-13 16:58:26      阅读:82      评论:0      收藏:0      [点我收藏+]

题目:https://www.luogu.org/problem/P1003


 

暴力做法就是开一个场地大小的数组,模拟铺地毯的过程,但是数据太大,没法开这么大的数组。观察发现,只要存下左下角坐标和长宽就行,从后往前遍历,遇到(x,y)处铺有地毯就break,就找到答案。

技术分享图片
 1 #include <bits/stdc++.h>
 2 
 3 using namespace std;
 4 const int MAXN = 10000 + 10;
 5 int cnt[MAXN][4], id;
 6 
 7 int main()
 8 {
 9     int n;
10     cin >> n;
11     for (int i = 0; i < n; i ++ )
12     {
13         int a, b, g, k;
14         cin >> cnt[i][0] >> cnt[i][1] >> cnt[i][2] >> cnt[i][3]; 
15     }
16     int x, y;
17     cin >> x >> y;
18     int i;
19     for (i = n - 1; i >= 0; i -- )
20     {
21         if ((x >= cnt[i][0] && x <= cnt[i][0] + cnt[i][2]) && (y >= cnt[i][1] && y <= cnt[i][1] + cnt[i][3]))
22         {
23             printf("%d",i + 1);
24             break;
25         }
26     }
27     if (i < 0)  cout << "-1";
28     return 0;
29 }
View Code

 

洛谷 P1003 铺地毯

原文:https://www.cnblogs.com/chuyds/p/11516835.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!