atcoder#ABC210E. [ABC210E] Ring MST

[ABC210E] Ring MST

Score : 500500 points

Problem Statement

We have an undirected graph with NN vertices and 00 edges. Let us call the NN vertices Vertex 00, Vertex 11, Vertex 22, \ldots, Vertex N1N-1.

Consider MM kinds of operations on this graph. For each i=1,2,,Mi = 1, 2, \ldots, M, the operation of the ii-th kind is to choose an integer xx such that 0x<N0 \leq x \lt N and add an undirected edge connecting Vertex xx and Vertex (x+Ai)modN(x + A_i) \bmod N. Here, amodba \bmod b denotes the remainder when dividing aa by bb. It costs CiC_i yen to do the operation of the ii-th kind once.

You can do these MM kinds of operations any number of times (possibly zero) in any order. For example, if three kinds of operations are available, you can choose to do the first operation twice, the second zero times, and the third once.

Determine whether it is possible to make the graph connected. If it is possible, find the minimum total cost needed to do so.

Constraints

  • 2N1092 \leq N \leq 10^9
  • 1M1051 \leq M \leq 10^5
  • 1AiN11 \leq A_i \leq N-1
  • 1Ci1091 \leq C_i \leq 10^9
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

NN MM

A1A_1 C1C_1

A2A_2 C2C_2

\vdots

AMA_M CMC_M

Output

If it is possible to make the graph connected, print the minimum total cost needed to do so. If it is impossible to make the graph connected, print 1-1.

4 2
2 3
3 5
11

If we first do the operation of the first kind to connect Vertices 00 and 22, then do it again to connect Vertices 11 and 33, and finally the operation of the second kind to connect Vertices 11 and 00, the graph will be connected. The total cost incurred here is 3+3+5=113+3+5 = 11 yen, which is the minimum possible.

6 1
3 4
-1

There is no way to make the graph connected, so we should print 1-1.