#ABC210E. 环形最小生成树

环形最小生成树

环形最小生成树

题目描述

我们有一个具有 NN 个顶点、00 条边的无向图。 将顶点称为顶点 00、顶点 11、顶点 22、……、顶点 N1N-1

考虑对这个图进行 MM 种操作。

对于每个 i=1,2,,Mi = 1, 2, \ldots, M,第 ii 种操作是:选择整数 xx,满足 0x<N0 \le x \lt N,并添加一条连接顶点 xx 和顶点 (x+Ai)modN(x + A_i) \bmod N 的无向边。这里,amodba \bmod b 表示 aa 除以 bb 的余数。 执行一次第 ii 种操作需要花费 CiC_i 日元。

你可以按任意顺序进行这 MM 种操作任意次(可以为 0 次)。例如,如果有三种操作,你可以选择第一种操作进行两次、第二种操作进行零次、第三种操作进行一次。

判断能否使图连通。如果可能,输出达成连通所需的最小总费用。

输入格式

输入按以下格式从标准输入给出:

NN MM
A1A_1 C1C_1
A2A_2 C2C_2
\vdots
AMA_M CMC_M

输出格式

如果能使图连通,输出达成连通所需的最小总费用。

如果无法使图连通,输出 1-1

样例

4 2
2 3
3 5
11

如果先进行第一种操作连接顶点 0022,再进行一次第一种操作连接顶点 1133,最后进行第二种操作连接顶点 1100,图就连通了。 此时总费用为 3+3+5=113+3+5 = 11 日元,这是最小值。

6 1
3 4
-1

无法使图连通,所以应输出 1-1

数据范围

  • 2N1092 \le N \le 10^9
  • 1M1051 \le M \le 10^5
  • 1AiN11 \le A_i \le N-1
  • 1Ci1091 \le C_i \le 10^9
  • 输入均为整数
难度 提高
通过率
尝试 0
已通过 0
ID
2200
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签