Numbering Paths

题意翻译

给定一些组数据,每组数据由一个 $n$ 和 $n$ 对整数 $j$,$k$ 组成。由`EOF`停止读入。每组 $j_i$,$k_i$ 意味着存在一条由点 $j_i$ 到点 $k_i$ 的单向边。其中,所有 $j_i$,$k_i$ 中的最大值 $+1$ 即为最终矩阵边长 $a$。可能存在自环。数据保证任意一个点的入度和出度都不大于 $30$。 每组输出,包括一个字符串`matrix for city`,一个整数 $t$ 表示从 $0$ 开始的组数,以及一个 $a\times a$ 的矩阵 $M$,其中第 $i$ 行第 $j$ 个元素 $M[i][j]$ 表示从点 $i$ 到 $j$ 的不同路径数量。如果有无数条,在该位置输出 $-1$ 。严格要求行末没有空格。 感谢 @light_ght 提供的翻译。

题目描述

[problemUrl]: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=3&page=show_problem&problem=61 [PDF](https://uva.onlinejudge.org/external/1/p125.pdf) ![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA125/2c01b1b3863b0e262ebdab9e49d0d869d64c657f.png)

输入输出格式

输入格式


![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA125/1407cfa4ba0be873f9fa90f207289053a0315d27.png)

输出格式


![](https://cdn.luogu.com.cn/upload/vjudge_pic/UVA125/021959b0ec72154c8b191fe9fe01107113a492d7.png)

输入输出样例

输入样例 #1

7 
0 1 0 2 0 4 2 4 
2 3 3 1 4 3

5
0 2 0 1 1 5 2 5 2 1

9
0 1 0 2 0 3 0 4 1 4 
2 1 2 0 3 0 3 1

输出样例 #1

matrix for city 0
0 4 1 3 2
0 0 0 0 0
0 2 0 2 1
0 1 0 0 0
0 1 0 1 0
matrix for city 1
0 2 1 0 0 3
0 0 0 0 0 1
0 1 0 0 0 2
0 0 0 0 0 0
0 0 0 0 0 0
0 0 0 0 0 0
matrix for city 2
-1 -1 -1 -1 -1
0 0 0 0 1
-1 -1 -1 -1 -1
-1 -1 -1 -1 -1
0 0 0 0 0