当前位置: 首页 > wzjs >正文

系统更新西安seo招聘

系统更新,西安seo招聘,长沙美容网站建设,管理咨询公司swotH RainbowDash 的 Robot - 第七届校赛正式赛 —— 补题 题目大意: 给一个 n ∗ m n*m n∗m 的二维网格,在第 i i i 列中,前 a i a_i ai​ 单元格被阻断,无法通行,即 [ 1 , a i ] [1,a_i] [1,ai​] 。 一个机器人正…

H RainbowDash 的 Robot - 第七届校赛正式赛 —— 补题

题目大意:

给一个 n ∗ m n*m nm 的二维网格,在第 i i i 列中,前 a i a_i ai 单元格被阻断,无法通行,即 [ 1 , a i ] [1,a_i] [1,ai]

一个机器人正在这个网格内移动,你可以向他发送指令,使得其向 上下左右 移动,但是这个机器人是由缺陷的,每条指令会执行 k k k 次,因此,机器人每次移动 k k k 个单元格,如果机器人试图移动到受阻的单元格或网格外,就会爆炸。

q q q 次询问,每次询问都有一个起始单元格 s x , s y sx,sy sx,sy ,一个终点单元格 f x , f y fx,fy fx,fy 和一个值 k k k

若机器人执行任意次命令,能否从起点单元到达终点单元

1 < = n < = 1 0 9 , 1 < = m < = 2 ∗ 1 0 5 1<=n<=10^9,1<=m<=2*10^5 1<=n<=109,1<=m<=2105

0 < = a i < = n 0<=a_i<=n 0<=ai<=n

1 < = q < = 2 ∗ 1 0 5 1<=q<=2*10^5 1<=q<=2105

1 < = k < = 1 0 9 1<=k<=10^9 1<=k<=109

保证起点坐标和终点坐标有效

思路:

优先考虑机器人从起点坐标走到终点坐标需要满足的条件,

s x sx sx f x fx fx 之间距离必须是 k k k 的倍数, s y sy sy f y fy fy 之间距离必须是 k k k 的倍数

if( llabs(sx-fx)%k!=0 || llabs(sy-fy) ){cout<<"No\n";continue;
}

满足以上条件之后,考虑从 s y sy sy 到达 f y fy fy ,需要满足之间没有受阻的网格,所以贪心的想,优先走到该列最下面,再往左右走,考虑从第 s y sy sy f y fy fy 之间最大的受阻网格为多少即可,数据范围较大,维护区间最值可选用线段树 。

int len=sx+(n-sx)/k*k;
auto x=query(1,1,m,min(sy,fy),max(sy,fy));
if(x.mx>=len){cout<<"No\n";
}else{cout<<"Yes\n";
}

代码:

#include <bits/stdc++.h>
using namespace std;
#define int long long
#define fi first
#define se second
#define PII pair<int,int>
#define lowbit(x) x&-x
#define ALL(x) x.begin(),x.end()const int mod = 1e9 + 7;
const int N = 1e6 + 10;int a[N];
struct node
{int lz;int mx;
}tr[N*4];node push_up(node L,node R)
{node res={0,0};res.mx=max(L.mx,R.mx);return res; 
}void build(int p,int l,int r)
{if(l==r){tr[p].mx=a[l];return ;}int mid=l+r>>1;build(p*2,l,mid);build(p*2+1,mid+1,r);tr[p]=push_up(tr[p*2],tr[p*2+1]);
}node query(int p,int l,int r,int L,int R)
{if(L<=l&&r<=R){return tr[p];}node res={0,0};int mid=l+r>>1;if(L<=mid) res=push_up(res,query(p*2,l,mid,L,R));if(R>mid) res=push_up(res,query(p*2+1,mid+1,r,L,R));return res;
}void solve() {int n,m;cin>>n>>m;for(int i=1;i<=m;i++){cin>>a[i];}	build(1,1,m);int q;cin>>q;while(q--){int sx,sy,fx,fy,k;cin>>sx>>sy>>fx>>fy>>k;if(llabs(sx-fx)%k!=0||llabs(sy-fy)%k!=0){cout<<"No\n";continue;}auto x=query(1,1,m,min(sy,fy),max(sy,fy));int len=sx+(n-sx)/k*k;
//		cout<<x.mx<<" "<<len<<'\n';if(x.mx>=len){cout<<"No\n";}else{cout<<"Yes\n";}}
}signed main() {std::ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);int T = 1;
//	cin >> T;while (T--) {solve();}return 0;
}
http://www.dtcms.com/wzjs/7509.html

相关文章:

  • 商务部网站市场体系建设司首页网站seo分析报告案例
  • 海南专业做网站的公司新闻头条最新消息今天发布
  • 网站内容编辑工具考研培训
  • 五常市网站百度app广告
  • 网站建设与网页设计专业google搜索入口
  • 网站底部怎么修改一手app推广接单平台
  • 毕业设计做app还是做网站seo免费浏览网站
  • 甘肃省引洮工程建设管理局官方网站关键词是怎么排名的
  • 时装+wordpress新乡百度关键词优化外包
  • 加盟网网站建设优化 seo
  • 深圳三合一建设网站廊坊网络推广公司
  • 360怎么做网站排名网站页面关键词优化
  • 海口建网站公司百度网页版网址
  • 西安动力无限网站建设营销活动方案
  • 购物网站开发背景需求百度指数查询网
  • python 视频播放网站开发网络营销过程步骤
  • 数字营销公司排行榜seo的方式包括
  • 做网站上传的图片显示变形宝安网站建设
  • 织梦网站模版万网域名
  • 珠海网站建设珠海郑州seo线下培训
  • 武汉做网站优化的公司app推广软件有哪些
  • wordpress 购买主题长沙百度搜索排名优化
  • 做网站制作外包网页优化方法
  • 淄博高端网站建设手机百度免费下载
  • 网站开发H5今天刚刚发生的重大新闻
  • 门户网站做福州网站建设团队
  • 那个做头像的网站好廊坊百度提升优化
  • 海洋网络网站建设百度一下打开
  • 温州企业网站建设服务域名查询工具
  • 哈尔滨悦创网络科技网站开发苏州seo网站优化软件