首页 > 其他分享 >模拟 - CF1196C Robot Breakout

模拟 - CF1196C Robot Breakout

时间:2024-01-14 10:55:22浏览次数:32  
标签:int 机器人 Robot up down Breakout 1e5 CF1196C 集合点

Robot Breakout(CF1196C)

思路

这道题因为平面极大,暴力枚举每个点肯定会超时。所以,我们不妨从机器人出发。

我们可以枚举每个机器人可以执行的操作:

  1. 位置从 \((X_i,Y_i)\) 变为 \((X_i-1,Y_i)\),即向左走。

  2. 位置从 \((X_i,Y_i)\) 变为 \((X_i,Y_i+1)\),即向上走。

  3. 位置从 \((X_i,Y_i)\) 变为 \((X_i+1,Y_i)\),即向右走。

  4. 位置从 \((X_i,Y_i)\) 变为 \((X_i,Y_i-1)\),即向下走。

如果一个机器人执行不能执行操作 \(4\),那么下图的蓝色区域为该机器人的行动范围:

那么很多个机器人,它们的集合点就应该是这些区域的相交处:

我们便可以用变量 \(up,down\) 储存集合点 \(y\) 坐标的上下界,\(left,right\) 储存集合点 \(x\) 坐标的上下界。

如果当前机器人,无法下行,则 \(down=\max(down,a_iy)\);

如果当前机器人,无法左行,则 \(left=\max(left,a_ix)\);

如果当前机器人,无法下行,则 \(up=\min(up,a_iy)\);

如果当前机器人,无法左行,则 \(right=\min(up,a_ix)\);

Code

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int MAXN = 1e5 + 5;
int n;
struct bot {
	int x, y;
	int f[5];
} a[MAXN];
int r=1e5, up=1e5, l=-1e5, down=-1e5;
void work(){
	r=1e5, up=1e5, l=-1e5, down=-1e5;
	scanf("%lld", &n);
	for (int i = 1; i <= n; i++) {
		scanf("%lld", &a[i].x);
		scanf("%lld", &a[i].y);
		for (int j = 1; j <= 4; j++) {
			scanf("%lld", &a[i].f[j]);
		}
		if(a[i].f[1]==0){//不能向左走
			l=max(l,a[i].x);
		}
		if(a[i].f[2]==0){//不能向上走
			up=min(up,a[i].y);
		}
		if(a[i].f[3]==0){//不能向右走
			r=min(r,a[i].x);
		}
		if(a[i].f[4]==0){//不能向下走
			down=max(down,a[i].y);
		}
	}
	if(l<=r&&down<=up) printf("1 %lld %lld\n",l,down);
	else printf("0\n");
}
signed main() {
	int q;
	scanf("%lld",&q);
	while(q--){
		work();
	}
	return 0;
}

标签:int,机器人,Robot,up,down,Breakout,1e5,CF1196C,集合点
From: https://www.cnblogs.com/Ice-lift/p/17963444

相关文章

  • Agility Robotics和其他七家公司的类人机器人争夺工作岗位
    原创|文BFT机器人人形机器人何时会从研究项目过渡到商业产品?答案似乎是在2024年,届时一些资金充裕的公司将在商业试点项目中部署他们的机器人,以弄清楚人形机器人是否真的准备好投入工作。在2015年DARPA机器人挑战赛总决赛上亮相的机器人之一被称为ATRIAS,由俄勒冈州立大学动态机器......
  • Reinforcement Learning in Robotics: Enabling Autonomous Systems
    1.背景介绍人工智能(AI)和机器学习(ML)技术在过去的几年里取得了显著的进展,尤其是在深度学习方面。深度学习已经成功地应用于图像识别、自然语言处理、语音识别等领域,但在机器人控制和自主系统方面的应用仍然存在挑战。机器人控制和自主系统的主要挑战之一是如何让机器人能够在不同的环......
  • CF1045G AI robots题解
    题目链接:洛谷或者CF本题考虑转化为cdq分治模型对于cdq分治来说,只需要考虑左边对右边的影响,那我们要考虑该怎样设置第一维度的左右对象。很显而易见的是抛开\(q\)限制而言,我们着眼于,如何让双方互相看到的严格条件转化为只需要关注单体看见。考虑什么情况下只需要一方看到......
  • 浅析RobotFramework工具的使用 | 京东物流技术团队
    1简介最近几年越来越多的公司都开始进行自动化测试的设计和布局了,自动化,顾名思义就是把以人为驱动的测试行为转化为机器执行的一种过程,并经常用于回归测试中,市面上也存在很多开源的自动化测试的工具和理论知识,今天我要说的是RobotFramework这个工具;我也是在偶然的机会中接触到......
  • CF1902D Robot Queries 题解
    题意:有一个二维平面直角坐标系,给定一串向某个方向移动\(1\)个单位的操作。有\(q\)个询问,对于每个询问给定\(x,y,l,r\),问如果倒着做\(l\)到\(r\)这段区间中的操作,是否会经过\((x,y)\)。ds题。先预处理出\(sx_i,sy_i\)表示执行完操作\(i\)后的位置,如果在\([l,r]\)......
  • CF1253F Cheap Robot
    题意给定一个图,走过一条边的花费为权值,其中有\(k\)个充电点。你需要确定一个电量的上限,使得满足从\(a\)走到\(b\)。Sol先对于每个点求出她走到充电点最近的距离,用\(dij\)随便跑跑。考虑从\(a\tob\)一条边的贡献。设当前的电量上限为\(c\)。可得:\[c-dis_a\ge......
  • [CF1253F] Cheap Robot
    CheapRobot题面翻译给你一张\(N\)个点的带权无向连通图,其中结点\(1,2,…,k\)为充电中心。一个机器人在图中行走,假设机器人的电池容量为\(c\),则任何时刻,机器人的电量\(x\)都必须满足\(0\lex\lec\)。如果机器人沿着一条边权为\(w\)的边从结点\(i\)走到结点\(j\),......
  • robots.txt禁止收录协议写法
    1. 什么是robots.txt?robots.txt 是网站和搜索引擎的协议的纯文本文件。当一个搜索引擎蜘蛛来访问站点时,它首先爬行来检查该站点根目录下是否存在robots.txt,如果存在,根据文件内容来确定访问范围,如果没有,蜘蛛就沿着链接抓取。robots.txt 放在项目的根目录下。2. robots.txt......
  • 初中英语优秀范文100篇-021Sophia the Robot-机器人索菲亚
    PDF格式公众号回复关键字:SHCZFW021记忆树1WhenitcomestoAI,Sophiatherobotismentionedagainandagain.翻译说到人工智能,总是会反复提到机器人索菲亚。简化记忆反复句子结构句子结构分析:主句:Sophiatherobotismentionedagainandagain.主语:Sophia......
  • OSCP(提高篇靶机mrRobot)
    第一步:nmap与dirb   fsocity.dic这个可能是用户或者密码的字典,发现内部存在大量重复数据 catfsocity.dic|sort|uniq>fsocietyuniq 进入登录界面test/test登录 第二步:使用hydra进行用户名密码暴力破解Invalidusername不存在该用户名  F=不存在这......