P5236 【模板】静态仙人掌

题目背景

这是一道静态仙人掌(Block Forest Data Structure)的模板题。 如果您不知道什么是仙人掌,那么此处给出无向仙人掌图的定义: >任意一条边至多只出现在一条简单回路的无向连通图称为仙人掌。

题目描述

给你一个有 $n$ 个点和 $m$ 条边的仙人掌图,和 $q$ 组询问 每次询问两个点 $u,v$,求两点之间的最短路。 保证输入数据没有重边。

输入格式

输出格式

说明/提示

**样例1解释:** 样例1中的仙人掌是这个样子的: ![](https://cdn.luogu.com.cn/upload/pic/52854.png) 询问有两个,分别是询问 $1\rightarrow 9$ 和 $5\rightarrow 7$ 的最短路 显然答案分别为 $5$ 和 $6$。 **数据范围:** $1\le n,q \le 10000$ $1\le m \le 20000$ $1\le w \le 10^5$ 保证输入数据没有重边。 请注意时限为 $300\text{ms}$