当前位置: 首页 > news >正文

青蛙跳杯子--bfs最短路

1.最短路效应求最少/最短

2.map<string,int>来代替vis标记次数

3.3种方式6种情况

#include<bits/stdc++.h>
using namespace std;
#define N 100011
typedef  long long ll;
typedef pair<ll,int> pii;
string a,b;
map<string,int> bo;
queue<string> q;
int main() {cin>>a>>b;bo[a]=1;for(int i=0;i<a.size();i++){if(a[i]=='*'){if(i-3>=0){char x=a[i-3];char y=a[i];string w=a;w[i-3]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i-2>=0){char x=a[i-2];char y=a[i];string w=a;w[i-2]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i-1>=0){char x=a[i-1];char y=a[i];string w=a;w[i-1]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+3<a.size()){char x=a[i+3];char y=a[i];string w=a;w[i+3]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+2<a.size()){char x=a[i+2];char y=a[i];string w=a;w[i+2]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+1<a.size()){char x=a[i+1];char y=a[i];string w=a;w[i+1]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}}}while(q.size()){string a=q.front();q.pop();if(a==b){cout<<bo[a]-1;return 0;}else{for(int i=0;i<a.size();i++){if(a[i]=='*'){if(i-3>=0){char x=a[i-3];char y=a[i];string w=a;w[i-3]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i-2>=0){char x=a[i-2];char y=a[i];string w=a;w[i-2]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i-1>=0){char x=a[i-1];char y=a[i];string w=a;w[i-1]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+3<a.size()){char x=a[i+3];char y=a[i];string w=a;w[i+3]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+2<a.size()){char x=a[i+2];char y=a[i];string w=a;w[i+2]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}if(i+1<a.size()){char x=a[i+1];char y=a[i];string w=a;w[i+1]=y;w[i]=x;if(!bo[w]) {bo[w]=bo[a]+1;q.push(w);}}}}}	} return 0;
}

相关文章:

  • 普通IT的股票交易成长史--20250514复盘
  • 基于GPUGEEK 平台进行深度学习
  • 高德地图在Vue3中的使用方法
  • vue3实现JSON格式化和JSONPath提取功能
  • 最大熵逆强化学习
  • Seata源码—2.seata-samples项目介绍
  • OrangePi Zero 3学习笔记(Android篇)9 - I2C和从设备
  • C++类和对象--高阶
  • 【C++】类与对象【下】
  • “智”造升级:金众诚如何赋能重型机械企业高效项目管理?
  • 【Deepseek 学cuda】CUTLASS: Fast Linear Algebra in CUDA C++
  • 【Python】普通方法、类方法和静态方法的区分
  • Vue百日学习计划Day1-3天详细计划-Gemini版
  • Socket API 核心函数详解
  • 万字解析:Java字符串
  • Three.js知识框架
  • rhel8.1 无法安装应用(提示需要注册系统)
  • 多线程与线程互斥
  • sip协议栈--sip结构分析
  • 一文理解扩散模型(生成式AI模型)(2)
  • “异常”只停留在医院里,用艺术为“泡泡宝贝”加油
  • 《蛮好的人生》:为啥人人都爱这个不完美的“大女主”
  • 共情场域与可持续发展——关于博物馆、美术馆运营的新思考
  • 沙县小吃中东首店在沙特首都利雅得开业,首天营业额5万元
  • 哈马斯表示已释放一名美以双重国籍被扣押人员
  • 《审判》|“被告”的魅力:K在等什么?