CF1495D.BFS Trees

省选/NOI-

通过率:0%

时间限制:2.50s

内存限制:512MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

We define a spanning tree of a graph to be a BFS tree rooted at vertex ss if and only if for every node tt the shortest distance between ss and tt in the graph is equal to the shortest distance between ss and tt in the spanning tree.

Given a graph, we define f(x,y)f(x,y) to be the number of spanning trees of that graph that are BFS trees rooted at vertices xx and yy at the same time.

You are given an undirected connected graph with nn vertices and mm edges. Calculate f(i,j)f(i,j) for all ii, jj by modulo 998 244 353998\,244\,353.

我们定义图的一棵生成树为以顶点 ss 为根的 BFS 树,当且仅当对每个顶点 tt,ss 与 tt 在原图中的最短距离等于 ss 与 tt 在该生成树中的最短距离。

给定一个图,我们定义 f(x,y)f(x,y) 为该图中同时是以顶点 xx 和顶点 yy 为根的 BFS 树的生成树的数量。

你将得到一个包含 nn 个顶点和 mm 条边的无向连通图。请对所有 ii、jj 计算 f(i,j)f(i,j),结果对 998 244 353998\,244\,353 取模。

输入格式

The first line contains two integers nn, mm (1≤n≤4001 \le n \le 400, 0≤m≤6000 \le m \le 600) — the number of vertices and the number of edges in the graph.

The ii-th of the next mm lines contains two integers aia_i, bib_i (1≤ai,bi≤n1 \leq a_i, b_i \leq n, ai<bia_i \lt b_i), representing an edge connecting aia_i and bib_i.

It is guaranteed that all edges are distinct and the graph is connected.

第一行包含两个整数 nn、mm(1≤n≤4001 \le n \le 400,0≤m≤6000 \le m \le 600)—— 分别表示图中顶点的数量和边的数量。

接下来的 mm 行中,第 ii 行包含两个整数 aia_i、bib_i(1≤ai,bi≤n1 \leq a_i, b_i \leq n,ai<bia_i \lt b_i),表示一条连接顶点 aia_i 和 bib_i 的边。

保证所有边互不相同,且该图是连通的。

输出格式

Print nn lines, each consisting of nn integers.

The integer printed in the row ii and the column jj should be f(i,j) mod 998 244 353f(i,j) \bmod 998\,244\,353.

输出 nn 行,每行包含 nn 个整数。

第 ii 行第 jj 列所输出的整数应为 f(i,j) mod 998 244 353f(i,j) \bmod 998\,244\,353。

输入输出样例

  • 输入#1

    4 4
    1 2
    2 3
    3 4
    1 4

    输出#1

    2 1 0 1
    1 2 1 0
    0 1 2 1
    1 0 1 2
  • 输入#2

    8 9
    1 2
    1 3
    1 4
    2 7
    3 5
    3 6
    4 8
    2 3
    3 4

    输出#2

    1 0 0 0 0 0 0 0
    0 2 0 0 0 0 2 0
    0 0 1 0 1 1 0 0
    0 0 0 2 0 0 0 2
    0 0 1 0 1 1 0 0
    0 0 1 0 1 1 0 0
    0 2 0 0 0 0 2 0
    0 0 0 2 0 0 0 2

说明/提示

The following picture describes the first example.

The tree with red edges is a BFS tree rooted at both 11 and 22.

Similarly, the BFS tree for other adjacent pairs of vertices can be generated in this way.

下图描述了第一个示例。

带红色边的树是一棵以顶点 11 和 22 为根的 BFS 树。

类似地,其他相邻顶点对的 BFS 树也可通过这种方式生成。

输入解题思路,AI测评打分。不知道怎么写?

首页