Squared Graph

AtCoder
IDagc011_c
Time2000ms
Memory256MB
Difficulty
Takahashi has received an undirected graph with $N$ vertices, numbered $1$, $2$, ..., $N$. The edges in this graph are represented by $(u_i, v_i)$. There are no self-loops and multiple edges in this graph. Based on this graph, Takahashi is now constructing a new graph with $N^2$ vertices, where each vertex is labeled with a pair of integers $(a, b)$ ($1 \leq a \leq N$, $1 \leq b \leq N$). The edges in this new graph are generated by the following rule: * Span an edge between vertices $(a, b)$ and $(a', b')$ if and only if both of the following two edges exist in the original graph: an edge between vertices $a$ and $a'$, and an edge between vertices $b$ and $b'$. How many connected components are there in this new graph? ## Constraints * $2 \leq N \leq 100,000$ * $0 \leq M \leq 200,000$ * $1 \leq u_i < v_i \leq N$ * There exists no pair of distinct integers $i$ and $j$ such that $u_i = u_j$ and $v_i = v_j$. ## Input The input is given from Standard Input in the following format: $N$ $M$ $u_1$ $v_1$ $u_2$ $v_2$ : $u_M$ $v_M$ [samples]
Samples
Input #1
3 1
1 2
Output #1
7

The graph constructed by Takahashi is as follows.
![image](https://atcoder.jp/img/agc011/6d34a4ddeba67b2286c00acda56abbcc.png)
Input #2
7 5
1 2
3 4
3 5
4 5
2 6
Output #2
18
API Response (JSON)
{
  "problem": {
    "name": "Squared Graph",
    "description": {
      "content": "Takahashi has received an undirected graph with $N$ vertices, numbered $1$, $2$, ..., $N$. The edges in this graph are represented by $(u_i, v_i)$. There are no self-loops and multiple edges in this g",
      "description_type": "Markdown"
    },
    "platform": "AtCoder",
    "limit": {
      "time_limit": 2000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "agc011_c"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Takahashi has received an undirected graph with $N$ vertices, numbered $1$, $2$, ..., $N$. The edges in this graph are represented by $(u_i, v_i)$. There are no self-loops and multiple edges in this g...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments