问题 5225 --康托表

5225: 康托表

题目描述

康托是一名数学家,他证明了一个重要的定理,需要使用一张表: $$ \begin{array}{ccccccc} 1/1 & 1/2 & 1/3 & 1/4 & 1/5 & \cdots\\ 2/1 & 2/2 & 2/3 & 2/4 & 2/5 & \cdots\\ 3/1 & 3/2 & 3/3 & 3/4 & 3/5 & \cdots\\ 4/1 & 4/2 & 4/3 & 4/4 & 4/5 & \cdots\\ 5/1 & 5/2 & 5/3 & 5/4 & 5/5 & \cdots\\ \cdots&\cdots&\cdots&\cdots&\cdots&\cdots\\ \end{array} $$ 这个表的规律是: + 从上到下:每一行的分子依次增大; + 从左到右:每一列的分母依次增大。 康拓一种不重复、不遗漏的方式,将表上所有数字列举了出来。方法如下:从左上角的 $1/1$ 出发, Z 字形扫描,其中: + 第一项是 $1/1$; + 第二项是 $1/2$、第三项是 $2/1$ + 第四项是 $3/1$,第五项是 $2/2$,第六项是 $1/3$ + 接下来几项分别是: $$1/4, ~2/3, ~3/2, ~4/1, ~5/1, ~4/2, ~\cdots$$ 给定一个分数 $a/b$,请计算该分数在康拓表中排名第几。

输入

两个整数:$a$ 与 $b$,表示一个分数 $a/b$。

输出

单个数字:表示输入分数在康拓表中的名次。

样例输入输出

输入#1 复制
2 4
输出#1 复制
14
输入#2 复制
1 4
输出#2 复制
7

提示

+ 对于 $50\%$ 的分数,$1\leq a,b\leq 100$; + 对于 $100\%$ 的分数,$1\leq a,b\leq 10000$。
序号 标题 作者 发表时间 费用 订购数 操作