1 条题解
-
0
#define N 200009 #include<bits/stdc++.h> using namespace std; int h,w,x,y,n,q; map<int,set<int>> r,c; set<int>::iterator it; int main(){ cin>>h>>w>>x>>y>>n; for(int a,b,i=1;i<=n;i++)cin>>a>>b,r[a].insert(b),c[b].insert(a); cin>>q; for(int t,i=1;i<=q;i++){ char dir;cin>>dir>>t; if(dir=='L')r[x].insert(0),r[x].insert(w+1),y=max(y-t,(*(--r[x].upper_bound(y)))+1); if(dir=='R')r[x].insert(0),r[x].insert(w+1),y=min(y+t,(*(r[x].upper_bound(y)))-1); if(dir=='U')c[y].insert(0),c[y].insert(h+1),x=max(x-t,(*(--c[y].upper_bound(x)))+1); if(dir=='D')c[y].insert(0),c[y].insert(h+1),x=min(x+t,(*(c[y].upper_bound(x)))-1); cout<<x<<" "<<y<<endl; } return 0; }
- 1
信息
- ID
- 7761
- 时间
- 3000ms
- 内存
- 1024MiB
- 难度
- 9
- 标签
- 递交数
- 11
- 已通过
- 3
- 上传者