在线评测:
http://codevs.cn/problem/1134/
整体思路:
先把所有的地毯离线,然后读入所求位置之后将地毯倒着来,当前地毯覆盖目标点,输出即可
失误之处:
开始并没有发现可以先离线,读入目标点,撒比了,,QAQ,差点写了50的暴力暴力暴力模拟,,,,
体会心得:
显然做题要好好读题,,,
AC代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
using
namespace
std;
int
n,a[11000],b[11000],g[11000],k[11000],x,y;
int
main()
{
scanf
(
"%d"
,&n);
for
(
int
i = 1;i <= n;i++)
{
scanf
(
"%d%d%d%d"
,&a[i],&b[i],&g[i],&k[i]);
}
scanf
(
"%d%d"
,&x,&y);
for
(
int
i = n;i >= 1;i--)
{
int
you = a[i] + g[i];
int
shang = b[i] + k[i];
if
(x >= a[i] && y >= b[i] && x <= you && y <= shang)
{
printf
(
"%d\n"
,i);
return
0;
}
}
printf
(
"-1\n"
);
return
0;
}
|