#agc043c. [agc043_c]Giant Graph

[agc043_c]Giant Graph

题目描述

给定简单无向图 XX, YY, ZZ,它们分别有 NN 个顶点和 M1M_1, M2M_2, M3M_3 条边。XX, YY, ZZ 中的顶点分别为 x1,x2,dots,xNx_1, x_2, \\dots, x_Ny1,y2,dots,yNy_1, y_2, \\dots, y_Nz1,z2,dots,zNz_1, z_2, \\dots, z_NXX, YY, ZZ 中的边分别为 (xai,xbi)(x_{a_i}, x_{b_i})(yci,ydi)(y_{c_i}, y_{d_i})(zei,zfi)(z_{e_i}, z_{f_i})

基于 XX, YY, ZZ,我们将构建另一个有 N3N^3 个顶点的无向图 WW。可以从 XX, YY, ZZ 的每个图中选择一个顶点的方式有 N3N^3 种。每个选择对应于 WW 中的一个顶点。记 (xi,yj,zk)(x_i, y_j, z_k)WW 中与选择 xi,yj,zkx_i, y_j, z_k 对应的顶点。

我们按照以下方式在 WW 中构建边:

  • 对于 XX 中的每条边 (xu,xv)(x_u, x_v) 和每个 w,lw, l,在 (xu,yw,zl)(x_u, y_w, z_l)(xv,yw,zl)(x_v, y_w, z_l) 之间建立一条边。
  • 对于 YY 中的每条边 (yu,yv)(y_u, y_v) 和每个 w,lw, l,在 (xw,yu,zl)(x_w, y_u, z_l)(xw,yv,zl)(x_w, y_v, z_l) 之间建立一条边。
  • 对于 ZZ 中的每条边 (zu,zv)(z_u, z_v) 和每个 w,lw, l,在 (xw,yl,zu)(x_w, y_l, z_u)(xw,yl,zv)(x_w, y_l, z_v) 之间建立一条边。

然后,设 WW 中顶点 (xi,yj,zk)(x_i, y_j, z_k) 的权重为 $1,000,000,000,000,000,000^{(i +j + k)} = 10^{18(i + j + k)}$。找到 WW 中一个独立集的最大可能总权重,并将该总权重对 998,244,353998,244,353 取模后输出。

约束条件

  • 2leqNleq100,0002 \\leq N \\leq 100,000
  • 1leqM1,M2,M3leq100,0001 \\leq M_1, M_2, M_3 \\leq 100,000
  • 1leqai,bi,ci,di,ei,fileqN1 \\leq a_i, b_i, c_i, d_i, e_i, f_i \\leq N
  • XX, YY, ZZ 是简单图,即它们没有自环和重边。

输入格式

输入格式如下:

NN M1M_1 a1a_1 b1b_1 a2a_2 b2b_2 vdots\\vdots aM1a_{M_1} bM1b_{M_1} M2M_2 c1c_1 d1d_1 c2c_2 d2d_2 vdots\\vdots cM2c_{M_2} dM2d_{M_2} M3M_3 e1e_1 f1f_1 e2e_2 f2f_2 vdots\\vdots eM3e_{M_3} fM3f_{M_3}

输出格式

输出 WW 中一个独立集的最大可能总权重,将结果对 998,244,353998,244,353 取模后输出。


示例输入 1

2
1
1 2
1
1 2
1
1 2

示例输出 1

46494701

独立集的最大可能总权重是 (x2,y1,z1)(x_2, y_1, z_1), (x1,y2,z1)(x_1, y_2, z_1), (x1,y1,z2)(x_1, y_1, z_2), (x2,y2,z2)(x_2, y_2, z_2) 的总权重。结果应为 (3times1072+10108)(3 \\times 10^{72} + 10^{108})998,244,353998,244,353 取模后的值,即 46,494,70146,494,701


示例输入 2

3
3
1 3
1 2
3 2
2
2 1
2 3
1
2 1

示例输出 2

883188316

示例输入 3

100000
1
1 2
1
99999 100000
1
1 100000

示例输出 3

318525248