A Very Easy Graph Problem
TimeLimit:2500MS MemoryLimit:65536KB
64-bit integer IO format:%I64d
Problem Description
An undirected connected graph has $n$ nodes and $m$ edges, The $i$-th edge’s length is $2^i$. Each node $i$ has a value $a_i$, which is either $0$ or $1$. You need to calculate:
$$
\sum_{i=1}^{n}\sum_{j=1}^{n}d(i,j)\times [a_i=1\wedge a_j=0]
$$
$d(i,j)$ indicates the shortest distance between $i$ and $j$. $[\ ]$ is the Iverson bracket. $\wedge$ indicates $\texttt{AND}$.
Because the answer may be too large, please output the answer modulo $10^9 + 7$.
Input
The first line contains one integer $T$($1\le T \le 8$),indicating the number of test cases.
The second line contains two ingeters $n,m$($1\le n\le 10^5,1\le m\le 2\times 10^5$).
The third line contains $n$ positive integers $a_1,a_2,...,a_n(a_i = 0$ or $1$) —— the value of the nodes.
The following $m$ lines contain two ingeters $u,v(1
\le u,v \le n)$, and the $i$-th line represents the i-th undirected edge’s length is $2^i$, between node $u$ and $v$.
The sum of $n,m$ is no more than $2\times 10^5$.
Output
Print a single integer—— the value of the answer modulo $10^9+7$.