#JSUTFPC2025E. Elden Ring —— 艾尔登法环

Elden Ring —— 艾尔登法环

题面描述

在游戏艾尔登法环中,有一个著名的地标叫做“王城下水道”。这个复杂的建筑是许多经验丰富的魂游大师和新手褪色者的必吃项目,假设它由 nn 个房间和许多双向走廊组成。每个房间最多有三扇门,走廊从房间门后通向其他房间。每个房间的所有走廊都通向不同的房间。整个下水道是相互连通的,这意味着你可以在任意两个房间之间穿行,但你可能需要穿过其他房间。

你需要帮助标记门,以便更容易地进行探索。假设一个房间 uudud_u 个门通往其他房间,这些门将被标记为 1,2,,du1, 2, \cdots, d_u,然后所有玩家将遵循一个简单的步骤。如果他们在探索开始时在房间 uu,他们将选择标记为 1 的门并穿过相应的走廊。如果他们在房间 uu 并从走廊进入标记为 ii 的门,他们将选择标记为下一个数字的门(即,如果 i<dui < d_u,则为 i+1i + 1;如果 i=dui = d_u,则为 1),并穿过相应的走廊。

现在我们已经有了标签集,你需要找出如果玩家从每个房间开始探索,他们将经过的不同走廊的数量,假设他们遵守规则并走得足够长。

输入描述

第一行包含一个整数 nn (3n2×1053 \leqslant n \leqslant 2 \times 10^5),表示下水道中的房间数。

接下来的 nn 行包含所有走廊的描述,其中第 uu 行描述了连接房间 uu 和其他房间的走廊。它以一个整数 dud_u (1du31 \leqslant d_u \leqslant 3) 开头,表示该房间的门数。接下来是 dud_u 个整数 v1,v2,,vduv_1, v_2 , \cdots, v_{d_u},分别表示这些门通往的房间号(1vin,viu,1 \leqslant v_i \leqslant n, v_i \neq u, vivjv_i \neq v_j 如果 iji \neq j),按指定编号的顺序排列。

请注意,所有走廊都是双向的,因此如果有一扇从房间 uu 到房间 vv 的门,那么也有一扇从房间 vv 到房间 uu 的门。

输出描述

输出 nn 行,其中第 ii 行包含玩家从房间 ii 开始将访问的不同走廊的数量。

样例

6
3 4 2 3
3 5 1 3
3 6 1 2
1 1
1 2
1 3
5
4
5
5
4
5

注释

下图展示了玩家从节点 1 出发的路径。深蓝色和浅蓝色箭头上标注的数字分别表示玩家在第 ii 步的路径。这表明玩家穿过了五条不同的走廊。