nssl1338-逃亡路径【最短路计数,bfs】
正题
题目大意
n∗mn*mn∗m的格子,一个走"日"字形的马,从(1,1)(1,1)(1,1)走到(n,m)(n,m)(n,m)的最短路条数。
解题思路
模板最短路计数改一下即可
当然因为边权都为1所以这里改成了bfsbfsbfs
codecodecode
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<queue>
#define p(x,y) ((x-1)*m+y)
using namespace std;
const int dx[8]={1,1,-1,-1,2,2,-2,-2},dy[8]={2,-2,2,-2,1,-1,1,-1};
const int N=110,G=N*N,XJQ=9901;
struct node{int to,next;
}a[G*8];
int n,m,tot,ls[G],f[G],c[G];
queue<int> q;
void addl(int x,int y)
{a[++tot].to=y;a[tot].next=ls[x];ls[x]=tot;
}
void bfs()
{int s=p(1,1);q.push(s);f[s]=c[s]=1;while(!q.empty()){int x=q.front();q.pop();for(int i=ls[x];i;i=a[i].next){int y=a[i].to;if(!f[y])f[y]=f[x]+1,q.push(y);if(f[x]+1==f[y])c[y]=(c[y]+c[x])%XJQ;}}
}
int main()
{scanf("%d%d",&n,&m);for(int x=1;x<=n;x++)for(int y=1;y<=m;y++){for(int k=0;k<8;k++){int zx=x+dx[k],zy=y+dy[k];if(zx<1||zy<1||zx>n||zy>m) continue;addl(p(x,y),p(zx,zy));}}bfs();printf("%d",c[p(n,m)]);
}
nssl1338-逃亡路径【最短路计数,bfs】相关推荐
- 洛谷 1144 最短路计数 bfs
洛谷1144 最短路计数 传送门 其实这道题目的正解应该是spfa里面加一些处理,,然而,,然而,,既然它是无权图,,那么就直接bfs了,用一个cnt记录一下每一个点的方案数,分几种情况讨论一下转移, ...
- 拼题 L2-001 紧急救援 最短路计数+记录路径
https://pintia.cn/problem-sets/994805046380707840/problems/994805073643683840 L2-001 紧急救援 (25 分) 作为一 ...
- Luogu P1144 最短路计数
题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数. 接下来M行 ...
- 【洛谷1144】最短路计数 最短路
最短路计数 题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条. 输入输出格式 输入格式: 输入第一行包含2个正整数N,M,为图的顶点数与边数. ...
- 最短路计数「负权值」
最短路计数 题目描述: n个点m条边的无向无权图,问从顶点1开始,到其他每个点的最短路有几条 思路: 最短路计数首先要满足的条件是不能存在权值为0的环,如果存在,则能经过这个环的点的最短路的数量就是无 ...
- BZOJ1491: [NOI2007]社交网络(Floyd 最短路计数)
Time Limit: 10 Sec Memory Limit: 64 MB Submit: 2343 Solved: 1266 [Submit][Status][Discuss] Descrip ...
- 1491. [NOI2007]社交网络【最短路计数】
Description 在社交网络(socialnetwork)的研究中,我们常常使用图论概念去解释一些社会现象.不妨看这样的一个问题. 在一个社交圈子里有n个人,人与人之间有不同程度的关系.我们将这 ...
- 2018.11.05 NOIP模拟 规避(最短路计数)
传送门 正难则反. 考虑计算两人相遇的方案数. 先正反跑一遍最短路计数. 然后对于一条在最短路上的边(u,v)(u,v)(u,v),如果(dis(s,u)*2<total&&di ...
- [图论]最短路计数(spfa)
最短路计数 Description 给出一个NN个顶点MM条边的无向无权图,顶点编号为1-N1−N.问从顶点11开始,到其他每个点的最短路有几条. Input 第一行包含22个正整数N,MN,M,为图 ...
最新文章
- Dubbo入门实例--转载
- java简单计算器课程设计_java仿windows简易计算器课程设计 源码+报告
- Python 夺大满贯!三大编程语言榜即将全部“失守”!
- 第三十九讲:tapestry 页面加载等待过程(ProgressiveDisplay)组件
- 是否遇到过MySQL workbench text字段不能直接放入json格式内容
- Html5游戏开发-145行代码完成一个RPG小Demo
- GPU成为主流 NVIDIA GRID亮相Citrix Synergy 2017
- MapReduce实现WordCount
- jquery 一个元素包含多个class时
- 重装windows后ubuntu系统启动菜单不见的修复方法
- 【错误率、精度、查准率、查全率和F1度量】详细介绍
- IText_根据模板导出PDF(文字、表格、图片)
- 注册表的使用-入门篇
- opencv(三)对图像进行简单算术运算(加减乘除)
- 安徽公务员计算机专业科目真题,公务员计算机专业真题+答案安徽省考 安徽省公务员考试...
- vr属于计算机什么领域,vr技术是什么
- Selenium元素操作与属性值_Sinno_Song_新浪博客
- scrollTo函数处理页面滚动问题
- WikiTaxi_Importer_1.3.1 维基 离线数据库
- 网络之TCP与UDP
热门文章
- 用matlab算24点小游戏,24点游戏的Matlab程序
- python创建一个空的dataframe_python 创建一个空dataframe 然后添加行数据的实例
- centos7python命令_02.将python3作为centos7的默认python命令
- 算法题目——爬楼梯(动态规划)
- leetcode209. 长度最小的子数组(滑动窗口)
- 解决Java当中 用point 画图时背景颜色变成黑色问题
- 过去3个多月的1200个小时里,我收获了什么?| 2021年年中总结
- Java Stack 类
- [JavaWeb-Bootstrap]Bootstrap响应式布局
- [JavaWeb-JDBC]JDBC_快速入门_idea jdbc连接Mysql数据库