nyoj 999

V-REP(Cooprliesim EDU)自学笔记 实现UR5机械臂末端按轨迹移动 阅读详情

  nyoj 999: 点击打开题目链接

题目思路,处理一下地图,把 D E 能看到的地方标记一下。然后就是暴力广搜一下。标记状态,因为同样在同一个点,但是你刚出发到达那点和找到D之后到达相同的点和找到E之后到达相同的点,这3中状态是不同的。用vis[x][y][3]

来标记状态,标记状态知道这题就AC了。


还有另外的思路就是把它们一个一个搜,S-->D-->E     S-->D-->E   S-->D,E;   分别广搜,取min即可。

下面是第一种,标记状态的方法。另外一种就不写了。


 
#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<vector>
#include<string>
#include<string.h>
#include<queue>


using namespace std;
typedef long long int LL;
typedef short int sint;
const int INF=~(1<<31);
const int MM=105;

int n,m,times;
sint dir[4][2]= {{1,0},{0,1},{-1,0},{0,-1}};
char maps[MM][MM];
bool vis[MM][MM][3];
struct node
{
    short int x,y,step,now;
};
bool is_out(sint x,sint y)
{
    if(x>=0&&x<n&&y>=0&&y<m) return true;
    return false;
}
int bfs(int sx,int sy)
{
    node first,second;
    if(maps[sx][sy]=='e') first.now=2;
    else if(maps[sx][sy]=='d') first.now=1;
    else if(maps[sx][sy]=='f') first.now=3;
    else first.now=0;
    queue<node>q;
    first.step=0,first.x=(sint)sx,first.y=(sint)sy;
    q.push(first);
    while(!q.empty())
    {
        first=q.front();
        q.pop();
      //  printf("step=%d x=%d y=%d now=%d\n",(int)first.step,first.x,first.y,first.now);
        if(first.now==3) return first.step;
        if(first.step>times) return -1;
        for(int i=0; i<4; i++)
        {
            sint x=first.x+dir[i][0],y=first.y+dir[i][1];
            if(is_out(x,y)&&vis[x][y][first.now]==0&&maps[x][y]!='X')
            {
                int now=first.now;
                second.now=now;
                vis[x][y][first.now]=true;
                if(maps[x][y]=='f') second.now=3;
                if(maps[x][y]=='d'&&now==2) second.now=3;
                else if(maps[x][y]=='d') second.now=1;
                if(maps[x][y]=='e'&&now==1) second.now=3;
                else if(maps[x][y]=='e') second.now=2;
                if(second.now!=3) vis[x][y][second.now]=true;
                second.step=first.step+1,second.x=x,second.y=y;
                q.push(second);
            }
        }
    }
    return -1;
}
void set_map(int dx,int dy,int ex,int ey)
{
    int x,y;
    for(x=dx+1,y=dy; is_out(x,y)&&maps[x][y]=='.'; x++) maps[x][y]='d';
    for(x=dx-1,y=dy; is_out(x,y)&&maps[x][y]=='.'; x--) maps[x][y]='d';
    for(x=dx,y=dy+1; is_out(x,y)&&maps[x][y]=='.'; y++) maps[x][y]='d';
    for(x=dx,y=dy-1; is_out(x,y)&&maps[x][y]=='.'; y--) maps[x][y]='d';

    for(x=ex+1,y=ey; is_out(x,y)&&(maps[x][y]=='.'||maps[x][y]=='d'); x++)
        if(maps[x][y]=='d') maps[x][y]='f';
        else maps[x][y]='e';
    for(x=ex-1,y=ey; is_out(x,y)&&(maps[x][y]=='.'||maps[x][y]=='d'); x--)
        if(maps[x][y]=='d') maps[x][y]='f';
        else maps[x][y]='e';
    for(x=ex,y=ey+1; is_out(x,y)&&(maps[x][y]=='.'||maps[x][y]=='d'); y++)
        if(maps[x][y]=='d') maps[x][y]='f';
        else maps[x][y]='e';
    for(x=ex,y=ey-1; is_out(x,y)&&(maps[x][y]=='.'||maps[x][y]=='d'); y--)
        if(maps[x][y]=='d') maps[x][y]='f';
        else maps[x][y]='e';
}
void p_m()
{
    int i,j;
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
            printf("%c",maps[i][j]);
        printf("\n");
    }
}
int main(void)
{
    int cases=0;
    while(cin>>n>>m>>times)
    {
        int i,j,sx,sy,dx,dy,ex,ey;
        memset(maps,0,sizeof(maps));
        memset(vis,0,sizeof(vis));
        for(i=0; i<n; i++)
        {
            cin>>maps[i];
            for(j=0; j<m; j++)
            {
                if(maps[i][j]=='S') maps[i][j]='.',sx=i,sy=j;
                if(maps[i][j]=='D') dx=i,dy=j;
                if(maps[i][j]=='E') ex=i,ey=j;
            }
        }
        set_map(dx,dy,ex,ey);
        maps[dx][dy]='X';
        maps[ex][ey]='X';
        printf("Case %d:\n%d\n",++cases,bfs(sx,sy));
    }
    return 0;
}
        


Juniper SRX PPPoE配置 set interfaces pp0 unit 1 ppp-options chap default-chap-secret 拨号用户名密码。set interfaces pp0 unit 0 ppp-options chap default-chap-secret 拨号密码。set interfaces pp0 unit 0 ppp-options chap local-name 拨号用户名。6号口接运营商进行拨号。 阅读详情

相关推荐

告别Colmap!在ROS2 Humble上,用Fast-LIVO2直接为3D Gaussian Splatting准备数据全流程

本文详细介绍了在ROS2 Humble环境下,使用Fast-LIVO2为3D Gaussian Splatting(3DGS)准备数据的全流程。通过优化Fast-LIVO2配置、实时数据同步机制和3DGS训练参数,显著提升了三维重建效率和质量,相比传统Colmap流程节省95%以上的预处理时间。适用于Ubuntu22.04系统,适合机器人及自动驾驶领域的三维重建应用。

weixin_28688385的博客 588

nyoj999

注意小细节,图是矩形。。。不是方形。

有梦想的蜗牛 704

超级详细!!!新手使用AutoDL跑深度学习(MixVPR项目)的学习记录

新手第一次在AutoDL上跑深度学习的实验,遇到一些问题,简单记录一下。如果大家发现问题,欢迎和我讨论。

weixin_45152283的博客 5万+

NYOJ-999-师傅又被妖怪抓走了

ACM模版描述题解第一次做双BFS,有些生疏,有些想当然。一直以为最先搜索出来的就是最优的,可是对于双BFS而言,第一个BFS最先搜索出来的不一定是最优的,需要将第一个BFS搜索出来的所有结果都进行第二个BFS,从得到的答案中选取最优即可。因为没有写过双BFS,所以一开始写的代码十分冗杂,不够简练,后参考标准的双BFS代码后改写了一下下……挺不错的一道题,毕竟是我做的第一个双BFS,理解了这个算法的

逐梦者 1335

模拟IC设计笔记:拆解一个经典的时钟占空比校正(DCC)电路模块,从理论到SPICE仿真

本文深入解析了时钟占空比校正(DCC)电路在模拟IC设计中的关键作用,特别是在高速ADC应用中。通过晶体管级拆解,详细介绍了基于电荷泵和积分器的模拟反馈型DCC电路设计,包括占空比检测、误差放大与校正执行单元的实现。文章还提供了SPICE仿真验证方法,确保电路在100MHz时钟下的稳定性和性能。

weixin_33725722的博客 428

PostgreSQL+PostGIS空间数据入库实战:从矢量栅格到GeoServer发布全流程

本文详细介绍了将矢量与栅格空间数据导入PostgreSQL并利用PostGIS扩展进行管理的完整流程。内容涵盖环境搭建、使用shp2pgsql和raster2pgsql工具进行数据入库、基础空间查询验证,以及最终通过GeoServer发布为地图服务的实战步骤,为构建空间数据平台提供清晰指引。

weixin_29268267的博客 289

nyoj-999 师傅又被妖怪抓走了

http://acm.nyist.net/JudgeOnline/problem.php?pid=999

风儿-zsj的专栏 1618

FPGA+滨淞CCD实战:手把手教你搭建S7031/S10142成像电路(附避坑指南)

本文详细介绍了使用FPGA驱动滨淞CCD传感器(S7031/S10142)构建高精度成像系统的完整实战流程。内容涵盖核心器件选型、系统架构规划、电路板(焦面板与接口板)设计要点、FPGA Verilog逻辑实现,并提供了从电源管理、信号调理到数据采集的详细避坑指南,帮助读者从零搭建稳定可靠的成像电路。

weixin_29271263的博客 227

nyoj999 师傅又被妖怪抓走了 (预处理+bfs+状态压缩)

题目999题目信息运行结果本题排行讨论区 师傅又被妖怪抓走了 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 话说唐僧复得了孙行者,师徒们一心同体,共诣西方。自宝象国救了公主,承君臣送出城西,沿路饥餐渴饮,悟空便为师傅去化斋,等悟空回来,悟净慌慌张张的对悟空说:“不好了,不好了”,还没等悟净说完,悟空说:“师傅又被妖怪抓走了”,悟净:“NO!”

苏苏爱自由 5770

上下文理解的AI增强方案:AI应用架构师的架构洞察

本文将从AI应用架构师的视角,深入探讨“上下文理解”的技术本质、核心挑战,以及一套可落地的上下文增强架构方案。我们会拆解上下文理解的底层需求,分析架构设计中的关键决策,并通过具体案例展示如何构建一个能“记住过去、理解现在、预测未来”的AI系统。三个维度:上下文的内容范围(短期/中期/长期)、数据类型(文本/结构化/多模态)、技术挑战(窗口限制/信息过载/跨会话一致性);三种架构模式:分层上下文存储(热/冷数据分离)、上下文路由(按需筛选)、动态压缩(适配模型窗口);四个关键组件。

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 220

从零开始:IBM V3700控制器更换与机器代码升级全流程指南

本文详细介绍了IBM V3700存储系统控制器更换与机器代码升级的全流程指南。从前期准备、硬件更换到版本同步,逐步解析如何应对503错误等常见问题,确保系统稳定运行。通过实战案例和优化建议,帮助工程师高效完成维护任务,提升存储系统可用性。

weixin_28365523的博客 312

nyoj 999 师傅又被妖怪抓走了

师傅又被妖怪抓走了时间限制:1000 ms  |  内存限制:65535 KB难度:3描述话说唐僧复得了孙行者,师徒们一心同体,共诣西方。自宝象国救了公主,承君臣送出城西,沿路饥餐渴饮,悟空便为师傅去化斋,等悟空回来,悟净慌慌张张的对悟空说:“不好了,不好了”,还没等悟净说完,悟空说:“师傅又被妖怪抓走了”,悟净:“NO!” ,悟空一脸茫然,悟净:“师傅和二师兄都被妖怪抓走了”。悟空(晕!)。为了...

你身后的人 425

Google Earth Engine:LandTrendr (Landsat Collection 2)全更新使用(代码调用+UI交互)

本文介绍了使用Landsat Collection 2进行连续变化监测的分析方法,包含代码实现和可视化界面两部分。代码部分通过Google Earth Engine平台运行LandTrendr算法,设置参数包括时间范围、光谱指数、变化检测阈值等,最终生成变化幅度和检测年份的可视化图层,并将结果导出至Google Drive。可视化界面部分展示了基于LandTrendr的土地覆盖变化结果,结合Landsat影像进行分析。整个方法实现了从数据处理到结果展示的完整流程,适用于森林覆盖等环境变化监测。

此星光明博客 211

NYOJ999 师傅又被妖怪抓走了

只记得当下的眼疼 , ok 各种数据也试了 , 就是 他娘的不对 , 我也是醉了 . 也是日了最野的狗 附上日了哮天犬的代码 , 这个题 先放放, 一段时间后再试试 , 明天开始状态压缩吧 .为期两天 今天早上 一眼就看出来了 代码的 漏洞 , 以后应该 自己想不出来的代码 让别人看看 , 互相交换着看看 预处理 + 两重广搜 1 #include<std...

weixin_33862041的博客 72

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

可重复广搜 —— NYOJ 999 师傅又被妖怪抓走了

可重复广搜 —— NYOJ 999 师傅又被妖怪抓走了

大田二十 1555

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

nyoj 999——师傅又被妖怪抓走了——————【双广搜】

师傅又被妖怪抓走了 时间限制:1000ms | 内存限制:65535KB 难度:3 描述 话说唐僧复得了孙行者,师徒们一心同体,共诣西方。自宝象国救了公主,承君臣送出城西,沿路饥餐渴饮,悟空便为师傅去化斋,等悟空回来,悟净慌慌张张的对悟空说:“不好了,不好了”,还没等悟净说完,悟空说:“师傅又被妖怪抓走了”,悟净:“NO!”,悟空一脸茫然,悟净:“师傅和二师兄都被妖...

weixin_30376509的博客 211

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

NYOJ 999 师傅又被妖怪抓走了(待续)

题目链接 觉得自己现在的水平还是写不出这个程序的,网上说是预处理+双光搜+状态压缩,开始的时候我竟觉得是深搜,写着写着不对劲才发觉,当然预处理和双广搜和状态压缩都是第一次遇到,我还是先放一放,日后再来看这个题目吧。。 题解链接

xj13821328013的博客 671

NYOJ ~ 999 ~ 师傅又被妖怪抓走了(BFS+状压)

思路:BFS。多加一个状态就可以了,状态的变化不是很好写。看代码理解吧。 #include using namespace std; const int MAXN = 105; struct node { int x,y,state,step; }NOW,NEXT; int n, m, t, sx, sy, ex1, ey1, ex2, ey2, dir[

张松超的博客 700

NYOJ999 师傅又被妖怪抓走了(预处理+状态压缩+广搜BFS)

题目: 师傅又被妖怪抓走了 时间限制:1000 ms  |  内存限制:65535 KB 难度:3 描述 话说唐僧复得了孙行者,师徒们一心同体,共诣西方。自宝象国救了公主,承君臣送出城西,沿路饥餐渴饮,悟空便为师傅去化斋,等悟空回来,悟净慌慌张张的对悟空说:“不好了,不好了”,还没等悟净说完,悟空说:“师傅又被妖怪抓走了”,悟净:“NO!” ,悟空一脸

riba2534的博客 939

《贪心算法》— NYOJ 1218 zkc学长的福利

zkc学长的福利 时间限制:10000ms | 内存限制:65535KB 难度:3 描述 又是一年ACM集训的时刻,zkc学长邀请n位同学来玩一个有奖游戏。首先,他让每个同学在左、右手上面分别写下一个整数,zkc学长自己也在左、右...

69小石头的博客 1000

作业题(nyoj 201)

作业题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描述 小白同学这学期有一门课程叫做《数值计算方法》,这是一门有效使用数字计算机求数学问题近似解的方法与过程,以及由相关理论构成的学科…… 今天他们的Teacher S,给他们出了一道作业题。Teacher S给了他们很多的点,让他们利用拉格朗日插值公式,计算出某严格单调函数的曲线。

23333333 832

NYOJ 399题 整除个数

静-静的雪 828

nyoj 155求高精度幂

求高精度幂 时间限制:3000 ms  |  内存限制:65535 KB 难度:2 描述 对数值很大、精度很高的数进行高精度计算是一类十分常见的问题。比如,对国债进行计算就是属于这类问题。  现在要你解决的问题是:对一个实数R( 0.0 n),其中n 是整数并且 0 输入输入有多行,每行有两个数R和n,空格分开。R的数字位数不超过10位。输出对于每组输入,要求输出一行,该行包

xunalove的博客 548
上一篇: hdu1226
下一篇: 最大网络流 EK 算法
Code--Dream
博客等级 码龄11年 53粉丝 100原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值