Under construction

Still being built. Things may change

Coloring Contention

Time limit1sMemory limit512 MB

Summary
Alice 2-colors the edges of a connected graph to maximize the color changes any 1-to-N path must make; find that maximum.
Level

Medium7 of 10

Topics
Graph, BFS, Shortest path, Game theory
Solved
No attempts yet

Problem

Alice and Bob are playing a game on a simple connected graph with N nodes and M edges.

Alice colors each edge in the graph red or blue.

A path is a sequence of edges where each pair of consecutive edges have a node in common. If the first edge in the pair is of a different color than the second edge, then that is a "color change."

After Alice colors the graph, Bob chooses a path that begins at node 1 and ends at node N. He can choose any path on the graph, but he wants to minimize the number of color changes in the path. Alice wants to choose an edge coloring to maximize the number of color changes Bob must make. What is the maximum number of color changes she can force Bob to make, regardless of which path he chooses?

Input

The first line contains two integer values N and M with 2 ≤ N ≤ 100 000 and 1 ≤ M ≤ 100 000. The next M lines contain two integers ai and bi indicating an undirected edge between nodes ai and bi (1 ≤ ai, bi ≤ N, ai ≠ bi).

All edges in the graph are unique.

Output

Output the maximum number of color changes Alice can force Bob to make on his route from node 1 to node N.

Examples2

  1. Example 1

    Input
    3 3
    1 3
    1 2
    2 3
    
    Expected output
    0
    
  2. Example 2

    Input
    7 8
    1 2
    1 3
    2 4
    3 4
    4 5
    4 6
    5 7
    6 7
    
    Expected output
    3