題目
題目連結
題解
思維。
對于某一個點而言,後覆寫的墊子編号将會被輸出,是以我們倒序找第一個覆寫該點的即可,這個墊子一定是最後摞在最上層的墊子。
這道題是我剛學算法,算法入門期間做的一道題,當時對于這個做法大受震撼,想想已經過去一年了,好快。
代碼
#include<bits/stdc++.h>
using namespace std;
const int N = 1e4+10;
int a[N], b[N], g[N], k[N], aa, bb, n;
int main()
{
cin>>n;
for(int i = 1;i <= n;i ++) cin>>a[i]>>b[i]>>g[i]>>k[i];
cin>>aa>>bb;
for(int i = n;i >= 1;i --) {
if(aa >= a[i] && bb >= b[i] && aa <= a[i]+g[i] && bb <= b[i]+k[i]) {
cout<< i << endl;
return 0;
}
}
cout << -1 <<endl;
return 0;
}