#CF2038K. 网格行走
网格行走
K. 网格行走
每次测试的时间限制:2 秒
每次测试的内存限制:512 兆字节
你有一个 的网格,以及两个整数 和 。行和列都从 到 编号。记第 行第 列的交点处的格子为 。
你从格子 出发,要移动到格子 。
假设你在格子 ,每一步你可以移动到格子 或 (如果相应格子存在)。
定义格子 的代价为:
其中 表示 和 的最大公约数。
一条从 到 的路径的代价是路径经过的所有格子的代价之和(包括起点和终点)。

找到代价最小的路径,并输出其代价。
输入
仅一行包含三个整数 、 和 (;)。
输出
输出一个整数 —— 从 到 的最便宜路径的代价。
示例
示例 1
输入
4 2 4
输出
21
示例 2
输入
10 210 420
输出
125
注释
第一个示例如上图所示。