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

瞬移--BFS+set去重

1.移动方式就是(x+y-1)%l,然后肯定得用set去重得到最简便的移动方式·

2.-BFS最短路效应,vis标记+记录路长

P12322 [蓝桥杯 2024 国 Java C] 瞬移 - 洛谷

#include<bits/stdc++.h>
using namespace std;
#define N 100011
typedef  long long ll;
typedef pair<int,int> pii;
int n,l; 
int a[2050];
set<int> d;
int vis[2050];
int main() {ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n>>l;for(int i=1;i<=n;i++) cin>>a[i];for(int i=1;i<=n;i++){for(int j=i;j<=n;j++){d.insert((a[i]+a[j]-1)%l);}}queue<int> q;q.push(1);vis[1]=1;while(q.size()){int t=q.front();q.pop();if(t==l){cout<<vis[l]-1;return 0;}for(int i:d){int pos=(t+i)%l+1;if(!vis[pos]){vis[pos]=vis[t]+1;q.push(pos);}}}cout<<-1;return 0;
}

http://www.dtcms.com/a/241393.html

相关文章:

  • 【DVWA系列】——xss(Reflected)——Medium详细教程
  • sql server连接遇到的问题
  • Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
  • 《Minio 分片上传实现(基于Spring Boot)》
  • LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
  • 第一章 空间解析几何与向量代数 ~ 空间直角坐标系
  • 人工智能100问☞第43问:什么是提示工程(Prompt Engineering)?
  • Python 训练 day46
  • LeetCode - 3. 无重复字符的最长子串
  • 项目管理进阶:解析112页IPD集成产品开发高层培训【附全文阅读】
  • 十一、MySQL 事务底层与高可用原理
  • FDA方向图的matlab仿真实现
  • Linux【5】-----编译和烧写Linux系统镜像(RK3568)
  • 力扣HOT100之栈:394. 字符串解码
  • 【RAG排序】rag排序代码示例-高级版
  • 基于PHP的连锁酒店管理系统
  • 英国云服务器上安装宝塔面板(BT Panel)
  • cie数通的含金量高吗?费用多少?
  • MySQL--慢查询日志、日志分析工具mysqldumpslow
  • 由于 z(x,y) 的变化导致的影响(那部分被分给了链式项)
  • 动画直播如何颠覆传统?解析足球篮球赛事的数据可视化革命
  • 深度剖析OpenSSL心脏滴血漏洞与Struts2远程命令执行漏洞
  • ShuffleNet 改进:与通道注意力机制(CAM)的结合实现
  • python报错 ModuleNotFoundError: No module named ‘Crypto‘
  • SpringAI实战:ChatModel智能对话全解
  • [Linux] 命令行管理文件
  • Spring Boot 启动流程详解
  • 安装便捷、维护省心,强力巨彩租赁屏助力视觉体验升级
  • LeetCode - 647. 回文子串
  • 求问,PMP属于职称认证吗?