求助,测试点2789 10全是re

P1003 [NOIP2011 提高组] 铺地毯

@[1_4_1_3](/space/show?uid=125172) 注意到只有一组询问,直接枚举地毯,判断点是否被覆盖即可 ~~等下楼主是不是在钓鱼~~
by Kirisame_Marisa_ @ 2018-11-18 16:12:02


```cpp #include<iostream> using namespace std; int a[100000],b[100000],c,d,e,f,g,h,i,j[100000],k[100000],l=1; int main(){ cin>>c; for(d=1;d<=c;d++){ cin>>a[d]>>b[d]>>j[d]>>k[d]; }cin>>e>>f; for(d=c;d>=1;d--) if(e>=a[d]&&e<=a[d]+j[d]&&f>=b[d]&&f<=b[d]+k[d]&&l==1){ cout<<d; l==2; return 0; }if(l==1) cout<<"-1"; } ```
by 你打野 @ 2018-11-18 16:58:05


一个只用STL的弱鸡打出来的不用二维数组的代码(我) ``` #include <bits/stdc++.h> using namespace std; struct di{ int x,y; int l,w,i; di(int x,int y,int l,int w,int i):x(x),y(y),l(l),w(w),i(i){} }; stack<di> s; int a,b,c,d,n,xx,yy; int main(){ cin>>n; for(int i=0;i<n;i++){ cin>>a>>b>>c>>d; di j(a,b,c,d,i+1); s.push(j); } cin>>xx>>yy; while(true){ if(xx>=s.top().x && xx<=s.top().x + s.top().l && yy>=s.top().y && yy<=s.top().y + s.top().w ){ cout<<s.top().i; return 0; } s.pop(); } cout<<"-1"; return 0; } ```
by 御坂13558号 @ 2018-11-28 20:49:30


#include<iostream> #include<cstdio> using namespace std; int main() { int a[10010],b[10010],x[10010],y[10010],n,ok=1,d[10010]; cin>>n; for(int i=1;i<=n;++i) { cin>>a[i]>>b[i]>>x[i]>>y[i]; d[i]=i; } int m,l; cin>>m>>l; for(int i=n;i>=1;i--) { if(m>=a[i]&&m<=a[i]+x[i]&&l>=b[i]&&l>=b[i]&&l<=b[i]+y[i]) { ok=0; cout<<d[i]; break; } } if(ok) cout<<"-1"; return 0; }
by pyyyyyy @ 2018-12-16 20:17:09


|