Codeforces Round #542 [Alex Lopashev Thanks-Round] (Div. 2), problem: (C) Connect 【dfs】
发布日期:2021-06-29 14:29:51
浏览次数:2
分类:技术文章
本文共 825 字,大约阅读时间需要 2 分钟。
题意
0’表示陆地,‘1’表示水,在水上行走不会耗费金钱,如果要通过水,则需要建隧道,花费费用是(x1-x2)(x1-x2)+(y1-y2)(y1-y2),求最小花费。
思路
n比较小,可以暴力搜索
code
#include#define endl '\n'using namespace std;const int maxn=50+5;int n;char mp[maxn][maxn];int vis[maxn][maxn];struct node{ int x,y;}s,e;int flag;vector ans[3];void dfs(int x,int y,int op){ if(x<1||x>n||y<1||y>n) return; if(vis[x][y]||mp[x][y]=='1') return; if(x==e.x&&y==e.y&&op==1) flag=1; vis[x][y]=1; ans[op].push_back(node{ x,y}); dfs(x+1,y,op); dfs(x-1,y,op); dfs(x,y+1,op); dfs(x,y-1,op); return;}int main(){ ios::sync_with_stdio(false); cin.tie(0); cin>>n; cin>>s.x>>s.y; cin>>e.x>>e.y; for(int i=1;i<=n;i++) cin>>mp[i]+1; flag=0; dfs(s.x,s.y,1); int mi=0x3f3f3f3f; if(flag) cout<<0<
学如逆水行舟,不进则退
转载地址:https://chocolate.blog.csdn.net/article/details/104172374 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月26日 09时25分03秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
树莓派网线直连
2019-04-29
复合材料培训(I第七期)
2019-04-29
复合材料生活中的应用
2019-04-29
ABAQUS复合材料(适合小白)
2019-04-29
ABAQUS高级案例解析
2019-04-29
人工智能药物研发
2019-04-29
【超级干货+福利】AIDD最全面的学习教程
2019-04-29
最新通知:AIDD与网络药理学资料大全
2019-04-29
Lammps分子动力学与第一性原理材料模拟及催化
2019-04-29
实习生小白的日常
2019-04-29
实习小白的日常(3)
2019-04-29
实习小白的日常(4)
2019-04-29
APP页面布局参考
2019-04-29
linux 的 Socket IO 模型
2019-04-29
APP调用服务器API设计
2019-04-29
Opencv+Zbar二维码识别(标准条形码/二维码识别)
2019-04-29
zbar优化
2019-04-29
微信扫码登录验证PHP代码(不用开放平台)
2019-04-29
CH554E USB单片机 10引脚小封装低成本USB方案
2019-04-29