首页 > 其他分享 >2024.09.08小红书

2024.09.08小红书

时间:2024-09-12 19:16:21浏览次数:11  
标签:格子 小红书 08 机器人 2024.09 int vector grid 滑行

1. 机器人走网格

小红书的冒险家们!今天,我们要进入一个充满挑战的高科技迷言。这是一张由小红书科技部最新研发的网格地图,每个格子都营着秘密一它们内置了自动滑行带!这些
滑行带会让所有进入它们的机器人自动翻一个特定方向滑行。
网格地图每个格子都藏着秘密一它们内置了自动滑行带!这些滑行带会让所有进入它们的机器人自动朝一个特定方向滑行。
具体来说,一张n*m的网格地图,左上角为(1,1),右下角为(n,m),每个格子有一个滑行带,前进方向为L,R,U,D,分别表示左右上下四个方向前进。
机器人走出地图后就会毁坏,一个格子可以容纳多个机器人。
第0时刻,每个位置都有一个机器人,问:第10^8时刻,地图上还剩下多少个机器人?

有循环的会进行保留
int main() {
    int n,m;
    cin>>n>>m;
    int dir[4][2] = {{0,-1},{0,1},{-1,0},{1,0}};
    map<char,int> mp = {{'L',0},{'R',1},{'U',2},{'D',3}};
    vector<vector<int>> grid(n,vector<int>(m));
    vector<vector<int>> flag(n,vector<int>(m));//0表示还没有遍历过,1是循环,-1不是
    char c;

    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){ 
            cin>>c;
            grid[i][j] = mp[c];
        }
    }
    function<bool(int,int,int)> dfs = [&](int x,int y,int id)->bool{
        if(flag[x][y]>0) return true;
        if(flag[x][y]==-1) return false;
        int nx = x+dir[grid[x][y]][0];
        int ny = y+dir[grid[x][y]][1];
        if(nx<0||ny<0||nx==n||ny==m) return false;
        //边界条件
        flag[x][y] = id;
        if(flag[nx][ny]==id)
            return true;
        if(dfs(nx,ny,id))
            return true;
        flag[x][y] = -1;
        return false;
    };
    int res = 0;
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){
            if(dfs(i,j,i*m+j+1)) res++;
        }
    }
    cout<<res<<endl;
    return 0;
}

2.

标签:格子,小红书,08,机器人,2024.09,int,vector,grid,滑行
From: https://www.cnblogs.com/929code/p/18410857

相关文章

  • 2024.08.25拼多多
    1.树中删边多多有一颗n个节点的树,树中每一条边都有一个权值。多多还有一个长度为n的正整数序列:删除树中若干条边之后(或者不删),就会变成一个有x个连通块的图,此时的得分为:剩余边权和+((两个可以互相到达的节点属于同一个连通块,注意一个孤点也是一个连通块)多多可以删除图中......
  • 2024.09.12 1749版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • KubeSphere 社区双周报| 2024.08.30-09.12
    KubeSphere社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过commit的贡献者,并对近期重要的PR进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。本次双周报涵盖时间为:2024.08.30-09.12。贡献者名单近期重要更新KubeSphereK......
  • 开启PDB时报错ORA-00800、ORA-65054
    问题描述:开启PDB时报错ORA-00800、ORA-65054,如下所示:数据库信息:账务库备库1节点IP:192.168.133.183实例名:tmis1版本:oracle19.201、告警信息2024-09-10T22:19:44.336563+08:00Errorsinfile/u01/app/oracle/diag/rdbms/tmisdg/tmis1/trace/tmis1_vktm_152164.trc(inciden......
  • 408存储系统大题笔记
    咸鱼25计组强化课P2的笔记,有点简陋。课后需要把第三章的课后大题(真题做一下)Cache类题目做题要注意的点!!PA的位数=Cache地址总位数Cache总行数Cache块大小第2和第3相乘得Cache数据区总大小(!=Cache总大小)映射方式一致性问题:写策略(直写/回写)替换算法CPU先把VA翻译成P......
  • Oracle 19c OCP 认证考试 082 题库(第20题)- 2024年修正版
    【优技教育】Oracle19cOCP082题库(Q20题)-2024年修正版考试科目:1Z0-082考试题量:90通过分数:60%考试时间:150min本文为(CUUG原创)整理并解析,转发请注明出处,禁止抄袭及未经注明出处的转载。原文地址:http://www.cuug.com/index.php?s=/home/article/detail/id/3401.html第......
  • 08 谈一谈对静态测试的理解
    静态测试是指在不运行被测程序的情况下,通过检查、审查、分析软件的文档、源代码、设计图等,来发现潜在的错误、缺陷、安全漏洞或不符合规范的问题。它主要依赖于人工审查、自动化工具辅助,或两者的结合。静态测试是软件开发过程中质量保证的重要环节,旨在尽早发现并纠正问题,以降低软......
  • Springboot创业园员工流动管理平台al084程序+源码+数据库+调试部署+开发环境
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容一、研究背景随着创业园的快速发展,员工流动管理成为创业园管理中的一大挑战。传统的人力资源管理方式存在信息不透明、流程繁琐等问题,导致员工信息......
  • 2024.09.11 1856版
    起于《海奥华预言》的思考◆地球管理结构和参考持续更新中...... 英文地址:https://github.com/zhuyongzhe/Earth/tags中文地址:https://www.cnblogs.com/zhuyongzhe85作者:朱永哲 ---------------------------------------------------------------------------------......
  • JT/T808协议:交通运输行业车载终端&监控中心
    JT808(简称:JT/T808)是我国交通行业标准之一,用于规范车载终端与监控中心之间的数据交互通信协议。该协议定义了车载终端与监控中心之间的通信规范,包括数据格式、命令集、消息传输等方面,以实现车辆远程监控、调度和定位等功能。###JT808协议定义的常见数据报文:1.**终端通用应答......