Codeforces 329B Biridian Forest(BFS)

codeforces 329B B. Biridian Forest 精巧的bfs B. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You're a mikemon breeder currently in the middle o 阅读详情

题目链接:Codeforces 329B Biridian Forest

BFS。

不难想到,若小队a距出口的最小距离小于等于主人公距出口的最小距离,小队a一定可一追到主人公,所以只要以出口为起点,做一个bfs记录下出口到各点的距离,之后统计人数即可。需要注意的一点是有些区域可能会被障碍物个离开,初始化的时候要将所有区域到出口的距离设为无穷大,不然在统计时可能会把隔了区的小队人数也统计进去。

#include <iostream>
#include <queue>
#include <cstring>

using namespace std;

const int MAX_N = 1000 + 100;
const int fx[5]={0,0,1,0,-1};
const int fy[5]={0,1,0,-1,0};
const int inf = (1 << 30);
int dis[MAX_N][MAX_N];
bool vis[MAX_N][MAX_N];
char _map[MAX_N][MAX_N];
struct Node
{
    int x,y,num;
};
struct Point
{
    int x,y,dis;
};
Node node[MAX_N * MAX_N];
Node st,en;//start,end
int r,c;

void BFS()
{
    queue<Point> point;
    Point p_en;
    p_en.x = en.x;
    p_en.y = en.y;
    p_en.dis = 0;
    point.push(p_en);
    vis[p_en.x][p_en.y] = true;
    while(!point.empty())
    {
        Point q = point.front();
        point.pop();
        Point _new;
        for(int i = 1;i <= 4;i++)
        {
            _new.x = q.x + fx[i];
            _new.y = q.y + fy[i];
            if(_new.x <= r && _new.x > 0 && _new.y <= c && _new.y > 0 && _map[_new.x][_new.y] != 'T' && !vis[_new.x][_new.y])
            {
                _new.dis = q.dis + 1;
                vis[_new.x][_new.y] = true;
                point.push(_new);
                dis[_new.x][_new.y] = _new.dis;
            }
        }
    }
}
int main()
{
    memset(vis,0,sizeof(vis));
    int cnt = 0;
    cin >> r >> c;
    for(int i = 1;i <= r;i++)
    {
        for(int j = 1;j <= c;j++)
        {
            cin >> _map[i][j];
            dis[i][j] = inf;
            if(_map[i][j] == 'S')
            {
                st.x = i;
                st.y = j;
            }
            else if(_map[i][j] == 'E')
            {
                en.x = i;
                en.y = j;
            }
            else if(_map[i][j] >= '0' && _map[i][j] <= '9')
            {
                cnt++;
                node[cnt].x = i;
                node[cnt].y = j;
                node[cnt].num = _map[i][j] - '0';
            }
        }
    }
    BFS();
    int ans = 0;
    for(int i = 1;i <= cnt;i++)
    {
        if(dis[node[i].x][node[i].y] <= dis[st.x][st.y])
            ans += node[i].num;
    }
    cout << ans << endl;
    return 0;
}


风储VSG-基于虚拟同步发电机的风储并网系统Simulink仿真 内容概要:本文介绍了“Plecs全桥LLC谐振变换器仿真模型”这一技术资源,聚焦于隔离型全桥LLC谐振变换器的建模、仿真与参数设计,涵盖其在电力电子系统中的关键应用,如软启动、闭环控制、变频控制及效率优化等。该模型支持对LLC变换器在不同工作模式下的动态响应与性能表现进行深入研究,适用于探究谐振拓扑结构、磁性元件设计、谐振参数匹配以及先进控制策略的科研与工程实践。同时,文档配套提供了仿真模型、设计报告与计算书等完整资料,强化了其实用性与教学价值。; 适合人群:具备电力电子、自动化或电气工程等相关专业背景,从事电力电子变换器研发、系统仿真与控制算法设计的科研人员、工程师及研究生。; 使用场景及目标:①用于全桥LLC谐振变换器的建模、仿真与动态性能分析;②支持对软启动过程、闭环稳压控制、变频调谐及效率优化等核心技术的研究与教学;③为电力电子电源系统的工程设计、参数优化与控制策略验证提供高精度仿真平台。; 阅读建议:建议结合Plecs或Simulink等仿真工具进行动手实践,重点理解电路拓扑构建、谐振参数计算、控制器设计与系统稳定性分析,并配合文档中的设计报告与计算书,系统掌握从理论到仿真的完整流程。 立即下载

相关推荐

WRF模式学习入门基础(建议收藏!!!)

本文详细介绍了WRF-ARW(Advanced Research WRF)模式的结构组成,重点讲解了前处理系统(WPS)和主模式中的各个关键程序的功能与流程。通过对geogrid、ungrib、metgrid、real和wrf等模块的逐步解析,帮助初学者全面理解数值天气预报模型在初始化和运行过程中所需的关键步骤。

2503_90234341的博客 3075

Biridian Forest(BFS)

题目链接:[http://codeforces.com/problemset/problem/329/B] 分析: 其它的训练师都是坏人,想和你打架,如果你是他们,你会怎么做? 肯定是在必经之路等着,可是必经之路有很多,他们没有瞬移能力,但是有一个位置你必然要到达,就是出口,所以他们只要在出口等你就好了。 也就是说,只要能在你之前或与你同时到达的训练师,都会和你发生战斗。 以终点开始...

CatDsy的博客 478

【LPDDR4 - 学习二】LPDDR4 介绍 ——LPDDR4 芯片引脚说明解析

本文系统解析了LPDDR4内存芯片的引脚定义与特性,重点介绍了272球POPFBGA封装的双通道架构。内容涵盖电源管理(三级供电架构与上电时序)、控制信号(差分时钟与复用命令总线)、数据接口(16位双向数据总线与选通信号)以及校准复位等核心模块。通过表格详细列明了各引脚电压范围、功能定义及工程注意事项,并附有典型封装球位分布图。全文基于JEDEC标准,为移动设备内存设计提供全面的硬件参考,特别强调电源时序控制、信号完整性及抗干扰设计等关键点。

zap15622077817的博客 2641

Biridian Forest(贪心,bfs,思维)

原题链接 题目描述 输入描述 输出描述 题目说明 输入样例1 5 7 000E0T3 T0TT0T0 010T0T0 2T0T0T0 0T0S000 输出样例1 3 输入样例2 1 4 SE23 输出样例2 2 题目大意: 在一片森林内存在你和其他竞争对手,你的目标是走到该森林的出口,但你的路线在其他竞争对手眼中是已知的(明牌! ),而其他竞争对手的目标是在路上偶遇你并和你打一架(不消耗时间),且每当你行动一格时,其他竞争对手也会行动一格,并且他们都很聪明不会选择绕路。求当你达到出口时所

国家一级划水运动员的博客 181

URP Shader编程之自定义后处理单pass渲染(URP 14.x)

❌ 不要在里拿✅ 只在里拿RendererFeature 生命周期RTHandle 设计Blitter 的真实语义Shader 输入来源。

qq1342753906的博客 608

uniapp无感刷新token实现过程

可以看到已经触发了刷新token接口,并且重新请求上次失败的列表接口,无感刷新token逻辑已经正常,但为什么列表接口请求成功,还一直loading没关闭捏,就是因为后续代码未执行,await接口的返回没有成功resolve。路漫漫其修远兮,前端道路逐渐迷茫,时隔好久好久终于想起了我还有一个小博客,最近在一直在弄uniapp,属实有被恶心到,但也至少会用了,最近实现了一个比较通用的功能,就是无感刷新token,但在过程中发现一个问题就是。3、排查await的列表接口为何没有成功resolve。

weixin_40618068的博客 3594

CF 329B(Biridian Forest-贪心-非二分)

B. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You're a mikemon breeder currently in th

nike0good |Oier&ACMer | 熟能生巧 1901

Cadence导入tsmcN65GP PDK的完整流程与常见问题解析

本文详细介绍了Cadence导入tsmcN65GP PDK的完整流程,包括文件解压、目录结构解析、安装脚本运行及Cadence集成配置。重点解析了常见问题如文件路径错误、权限问题和工艺库显示不全的解决方案,并提供了实战技巧与优化建议,帮助用户高效完成PDK安装与配置。

weixin_29215391的博客 546

Biridian Forest CodeForces - 329B (逆向bfs)

题目链接:点我题意:实际上就是问有多少人可以在开始位置S之前到达终点.思路:逆向bfs,记录从终点开始到每个点的距离,然后找出所有的距离比起点离终点小的点,把他们的人数加起来即可.代码:#include<cstdio> #include<cstring> #include<cmath> #include<iostream> using namespace std;const int maxn = 1

wood 494

2025年华为杯中国研究生数学建模竞赛E题 高速列车轴承智能故障诊断问题 思路+代码

all_data, file_info = preprocessor.load_mat_files(file_list[:50]) # 加载前50个文件作为示例。[y_source, y_source, domain_labels], # 注意:这里使用伪标签。X_target = np.random.randn(100, X_source.shape[1], 1) # 示例数据。"""构建CNN-Transformer混合模型""""""构建Transformer模型"""

YOLO 1046

手把手教你学Simulink——基于Simulink的多轮PMSM同步驱动交叉耦合控制

摘要:本文针对多轮PMSM同步驱动系统的负载不均、参数差异等问题,提出基于Simulink的交叉耦合控制解决方案。通过实时补偿轮间同步误差,实现同步误差<1%、转矩脉动<5%的性能提升。文章详细介绍了系统架构、核心算法(包括PMSM数学模型和偏差耦合控制算法)、Simulink建模步骤及参数设置,并通过仿真验证了稳态和动态性能。同时提供了工程调试建议和完整代码实现,为多轮驱动系统开发提供实用参考。该方案计算量小,可移植性强,适用于电动汽车、AGV等应用场景。

MHD0815的博客 140

CodeForces - 329B 《Biridian Forest》 【反向BFS】

Biridian Forest You're a mikemon breeder currently in the middle of your journey to become a mikemon master. Your current obstacle is go through the infamous Biridian Forest. The forest T

FinkyS 662

Planet explorer:免费获取高分辨率影像的网站

该软件提供了高质量的卫星图像和地形数据,用户可以使用该软件来查看地球上任何地方的详细地图信息,包括地形、道路、建筑物等。在接下来的30天里,你可以点击应用顶部的切换按钮,在新的和当前的应用之间进行切换。如果在你感兴趣的地区没有高分辨率图像,可以通过我们的SkySat卫星为你采购。如果你还没有与我们的50厘米图像合作,请在这里下载我们的高分辨率图像样本,或联系销售,在你的合同中增加任务访问。你可以在 "我的订单 "中订购你的数据以供下载。你也可以点击双方按钮,将图像的足迹锁定在地图上,以获得更好的。

此星光明博客 1681

【Codeforces 329B】Biridian Forest

【链接】 我是链接,点我呀:) 【题意】 题意 【题解】 找到出口到每个点的最短距离。 设你到出口的最短距离为temp 那么如果某个人到终点的距离<=temp,则他们肯定能遇到你 因为他们可以在终点等你。。 但是如果某个人到终点的距离>temp,那么他们肯定不可能在某个时刻和你遇到 因为如果可以在某个时刻与你遇到的话,那他可以接下来跟着你走,那么他到终点的距离...

219

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

CodeForces 329B(bfs)

B. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You're a mikemon breeder currently in the middle o

街角的花街糖 774

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Codeforces Round #192 (Div. 1) B. Biridian Forest 暴力bfs

B. Biridian Forest Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/329/problem/B Description You're a mikemon breeder currently in the middle of your journey to be...

weixin_34168880的博客 117

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

codeforces 330A 330B 329A 分别是7月20DIV2的前三题

题目地址:A. Cakeminator  B. Road Construction  C. Purification     都是思维题目,自己思想很不着调啊,还得多多联系。 A. Cakeminator /* 题目想复杂了,每一行或一列有东西就可以吃,at least one cake 可自己却看成了至少两个(num>1改成num>=1)........,悲剧了,

布生气 1647

codeforces329B(bfs)

题意描述 给定RxC的网格,网格中存在猎人,询问走到终点前要和多少组猎人碰面 思路 由于猎人事先知道我们行走的路线,所以猎人们可以先走到终点前等待,可以使用bfs预处理出终点到各个点之间的距离,如果猎人到终点的距离小于等于我们从起点到终点的距离,那么一点可以相遇,最后遍历一遍即可。 代码 #include<bits/stdc++.h> #define x first #define y second #define IOS ios::sync_with_stdio(false);cin.tie(

Dejavu的博客 303

Codeforces 330D Biridian Forest【思维+Bfs】

D. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You're a mikemon breeder currently in the middle o

mengxiang000000 482

Biridian Forest

//如果s - e的最短路比Breeder到e的最短路要长, 该Breeder就可以战斗, 因为它可以在终点等你~ //反之如果某个Breeder的到e的最短路比s - e的最短路长,但是可以在你的路径点x上和你战斗, //那么它也可以比你先前后者同时到达e, 和假设相反。 //所以比较最短路就行了, 用BFS给e打单源最短路径表, 然后比较就行了。 #include

极度猥琐 891

Codeforces 329B bfs

B. Biridian Forest time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standard output You're a mikemon breeder currently in the middle o

PiscesCrab的博客 532

CodeForces 38 F.Smart Boy(博弈论+dfs)

Description 有nnn个只由小写字母组成的字符串,两个人轮流从一个空字符串开始构造字符串,要求每个人在其操作轮要加一个字符在已有字符串前面或者后面使得这个字符串依旧是这nnn个字符串中某些字符串的子串,如果没有合法方案则该人失败,否则该人得分,假设该人操作后字符串为sss,则本轮得分Score(s)=(∑i=1|s|value(si))∗max1≤i≤|s|{|value(si)}+n...

ZSQ 768

Cutting CodeForces - 998B (思维)

B. Cuttingtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere are a lot of things which could be cut — trees, paper, "the rope". In this problem...

JiaYao的博客 760
上一篇: Codeforces 329A Purification
下一篇: HDU 1176 免费馅饼(数塔变形)
小爷永远不死
博客等级 码龄15年 58粉丝 363原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值