小W计树

小W计树


排列组合思想.
先跑一遍最短路, 再从1节点开始搜索, 假如搜到一个点的路径长度等于最短路, 则记录到达该点的路径数 + 1.
最后遍历一遍, ans *= rec[i]
输出答案即可.
关键在于想到这个排列组合的思想.

#include<cstdio>
#include<cstring>
#include<algorithm>
#define F(x) for (L i=h[x],v=e[i].v,w=e[i].w;i;i=e[i].next,v=e[i].v,w=e[i].w) 
using namespace std;
typedef long long L;
void read(L &x) {x=0;char c=getchar();for (;c<'0' || c>'9';c=getchar());for (;'0'<=c && c<='9';c=getchar()) x=x*10+c-'0'; 
}
const L Q=2147483647;
const L maxn=1e3+10;
const L maxm=maxn*maxn;
struct edge {L v,w,next;
} e[maxm];
L tot=0,h[maxn];
inline void add(L u,L v,L w) {e[++tot].v=v;e[tot].w=w;e[tot].next=h[u];h[u]=tot; 
}
L q[maxm],ql,qr,d[maxn];
bool inq[maxn];
void spfa(L s) {memset(inq,0,sizeof inq);memset(d,0x3f,sizeof d);ql=qr=1;q[qr]=s;d[s]=0;inq[s]=true;while (ql<=qr) {L u=q[ql++];F(u) if (d[v]>d[u]+w) {d[v]=d[u]+w;if (!inq[v]) inq[v]=true,q[++qr]=v;}inq[u]=false;}
}
L sum[maxn];
void check(L s) {memset(inq,0,sizeof inq);memset(sum,0,sizeof sum);ql=qr=1;q[qr]=s;d[s]=0;inq[s]=true;while (ql<=qr) {L u=q[ql++];F(u) if (d[v]==d[u]+w) {sum[v]++;if (!inq[v]) inq[v]=true,q[++qr]=v;}}
}
int main() {#ifndef ONLINE_JUDGEfreopen("test.in","r",stdin);#endifL n,m;read(n),read(m);for (L i=1;i<=m;++i) {L u,v,w;read(u),read(v),read(w);add(u,v,w),add(v,u,w);}   spfa(1);check(1);L ans=1;for (L i=1;i<=n;++i) if (sum[i]) (ans*=sum[i])%=Q;printf("%lld\n",ans);
}

转载于:https://www.cnblogs.com/ZeonfaiHo/p/6402856.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/270504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java jsonp 接口_jsonp使用,spring4.x对jsonp的支持

1.java中接口RequestMapping("/token/{token}")ResponseBodypublic Object getUserByToken(PathVariable String token,String callback) {Person per null;try {per userService.getPerson(token);} catch (Exception e) {e.printStackTrace();per ExceptionUtil…

CPU知识:主频、核心、线程、缓存、架构

我们都说CPU相当于人类的大脑&#xff0c;在日常生活中&#xff0c;人脑是术业有专攻&#xff0c;有人天生适合搞艺术&#xff0c;有人天生适合搞科学。CPU作为计算机的大脑&#xff0c;其实也是这样的。下面就带大家了解一下CPU知识以及怎么选择合适的CPU。 CPU有几个重要的参…

@SpringBootTest注解进行单元测试无法运行

1&#xff1a;用idea新建一个项目 2:在测试类下建一个方法&#xff0c;发现方法没法运行 查看资料之后发现是需要在对应的方面名称前面和类名前面加上public修饰符即可&#xff0c;需要测试那个方法执行哪个方法就行 3:加了 public发现可以运行了

java如何改注释_关于Java:更改字符串值的注释

在spring或java中是否有注释可以转换给定的字符串&#xff1f;例如&#xff0c;Spring具有注释Value(" some string")。 如果我想为该字符串分配一个转换后的值&#xff0c;而不是向参数/实例变量分配"某些字符串"怎么办&#xff1f; 假设字符串为" f…

视频接口:DP接口和HDMI接口介绍,看完你就懂了

目录 一、DP接口 二、HDMI接口 三、总结 1、技术支持的不同 2、带宽支持的不同 3、厂商制作成本的不同 电脑显示器高清传输通过会用到两个接口&#xff0c;就是DP接口和HDMI接口&#xff0c;今天电脑学习小编带大家对比一下这两个接口。 一、DP接口 DisplayPort缩写DP&#xff…

区间型DP

区间型DP是一类经典的动态规划问题&#xff0c;主要特征是可以先将大区间拆分成小区间求解最后由小区间的解得到大区间的解。 有三道例题 一、石子合并 在一个圆形操场的四周摆放N堆石子,现要将石子有次序地合并成一堆.规定每次只能选相邻的2堆合并成新的一堆&#xff0c;并将新…

后端:MyBatis缓存知识介绍

今天给大家分享一下MyBatis缓存知识介绍&#xff0c;希望对大家日常的开发当中能有所帮助&#xff01;一、MyBatis一级缓存1、一级缓存介绍当我们的程序MyBatis开启一次和数据库的会话&#xff0c;MyBatis会自动创建出一个SqlSession对象表示这一次数据库的会话。在同一个数据库…

软件:10款免费无广告的看图软件,总有一款适合你

目录 一、专业型看图软件 1.Windows照片 2.Honeyview 3.EzViewer 4.XnView MP 5.JPEGView 6.Irfan View 二、综合型文件查看 1.Quicklook 2.爱奇艺万能联播 3.WPS图片 4.谷歌浏览器 一、专业型看图软件 1.Windows照片 Windows自带的照片应用就是一款比较强大的看图软件&#xf…

机器学习的简单逻辑回归的Advanced Optimization

Learning Course: One variable logistic regression optimization 单变量&#xff08;只有一个特征&#xff09;的用于分类的逻辑回归的cost function的最小值求解, here: x[x1;x2]; y{0,1}; theta[theta(1);theta(2)] 由于分类中的y值需为0-1之间的数值&#xff0c;因此这里的…

java float f1=0.5_Java Math类静态float copySign(float f1,float f2)与示例

数学类float copySign(float f1&#xff0c;float f2)此方法在java.lang包中可用。此方法用于返回第一个浮点参数以及第二个浮点参数的符号。这是一个静态方法&#xff0c;因此也可以使用类名进行访问。在此方法中&#xff0c;我们传递了两个参数作为参数&#xff1a;第一个参数…

Sentinel介绍与使用

一、Sentinel简介 Sentinel是阿里开源的项目&#xff0c;提供了流量控制、熔断降级、系统负载保护等多个维度来保障服务之间的稳定性。 二&#xff1a;Sentinel 功能和设计理念 流量控制 流量控制在网络传输中是一个常用的概念&#xff0c;它用于调整网络包的发送数据。然而…

电脑知识:BIOS和UEFI的对比介绍

❤️作者主页&#xff1a;IT技术分享社区 ❤️作者简介&#xff1a;大家好,我是IT技术分享社区的博主&#xff0c;从事C#、Java开发九年&#xff0c;对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉&#xff1a; 数据库领域优质创作者&#x1f3c6;&#x…

缓存更新的套路

看到好些人在写更新缓存数据代码时&#xff0c;先删除缓存&#xff0c;然后再更新数据库&#xff0c;而后续的操作会把数据再装载的缓存中。然而&#xff0c;这个是逻辑是错误的。试想&#xff0c;两个并发操作&#xff0c;一个是更新操作&#xff0c;另一个是查询操作&#xf…

怎样获取当前页面值php,想要得到当前页面的所有url参数信息怎么用PHP来实现?...

本篇文章主要给大家介绍怎么使用php获取完整url。首先给新手小白们简单介绍下什么是url。百度百科上是这么解说的&#xff0c;统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示&#xff0c;是互联网上标准资源的地址。互联网上的每个文件都有一个唯…

@PostConstruct注解学习,最详细的分享教程

该注解可以实现在运行工程时&#xff0c;自动运行该注解下的方法&#xff1b; PostConstruct是java自带的注解&#xff0c;指的是在项目启动的时候执行这个方法&#xff0c;也可以理解为在spring容器启动的时候执行&#xff0c;可作为一些数据的常规化加载&#xff0c;比如数据…

电脑知识:分享实用的电脑维护小常识

目录 常识1&#xff1a;杜绝直接拔电脑电源强行关机 常识2&#xff1a;不要用电池玩游戏 常识3&#xff1a;开不了机可以尝试插拔内存条 常识4&#xff1a;电脑散热的处理方法 常识5&#xff1a;避免在电脑工作时拔插头 今天小编就为大家带来一些电脑日常实用中的维护小知识&am…

Sentinel实现黑白名单控制详细教程来了

一&#xff1a;新建一个IpRequestOriginParser类&#xff0c;实现RequestOriginParser接口&#xff0c;配置如下 public class IpRequestOriginParser implements RequestOriginParser {/*** Parse the origin from given HTTP request.** param request HTTP request* return …

php获取服务器名称,PHP 获取服务器详细信息

获取系统类型及版本号&#xff1a; php_uname() (例&#xff1a;Windows NT COMPUTER 5.1 build 2600)只获取系统类型&#xff1a; php_uname(s) (或&#xff1a;PHP_OS&#xff0c;例&#xff1a;Windows NT)只获取系统版本号&#xff1a; php_u…

D. Anton and Chess 模拟题 + 读题

http://codeforces.com/contest/734/problem/D 一开始的时候看不懂题目&#xff0c;以为象是中国象棋那样走&#xff0c;然后看不懂样例。 原来是走对角线的&#xff0c;长知识了。 所以我们就知道&#xff0c;王有八个方向&#xff0c;所以每个方向选一个来做代表就行了。 那么…