パスカルの三角形
题意翻译
高桥君喜欢帕斯卡的三角形。
帕斯卡的三角形,每一个数都等于它上方的数字加上左上方的数字加右上方的数字。
帕斯卡的三角形的第y行由y个数字组成,第y行第x个数字为f(y,x)。 它被定义为:当x=1或x=y时,f(y,x)=1;除此之外,f(y,x)=f(y-1,x)+f(y-1,x-1)。
高桥君想知道帕斯卡的三角形中有没有整数A。 如果A出现在帕斯卡的三角形中,输出第几行和第几个,否则输出-1。
两个输出的数字必须是2*10^9以下的整数。
说明
第六排,第三个数是10。除了第六排,第四个数也是10之外,其它输出都是没问题的。
可以输入一些比较大的数字。
感谢@sunyy 提供的翻译
题目描述
[problemUrl]: https://atcoder.jp/contests/code-festival-2014-final/tasks/code_festival_final_d
高橋君は、パスカルの三角形が大好きです。
パスカルの三角形とは、一つ上の数字の、右上の数と左上の数を足した数を書き連ねていくことにより、表現することが出来る三角形です。
パスカルの三角形の$ y $ 段目は $ y $ 個の数で構成されており、 $ y $ 段目 $ x $ 番目の数を $ f(y,x) $ とすると、
- $ x\ =\ 1 $、または $ x\ =\ y $ の時、$ f(y,x)\ =\ 1 $
- それ以外の時、$ f(y,x)\ =\ f(y-1,x)\ +\ f(y-1,x-1) $
と定義されます。
高橋君は、ある整数 $ A $ が、パスカルの三角形に含まれるかどうかを調べたいと思いました。
もし、パスカルの三角形に $ A $ が現れるのであれば、その段数、及び何番目かを出力し、出現しないのであれば、`-1 -1`と出力しなさい。
输入输出格式
输入格式
入力は以下の形式で標準入力から与えられる
> $ A $
- $ 1 $ 行目には、整数 $ A(1\ ≦\ A\ ≦\ 10^9) $ が与えられる。
输出格式
もし、パスカルの三角形に $ A $ が現れるのであれば、その段数、及び何番目かをスペース区切りで出力せよ。出現しないのであれば、`-1 -1`と出力せよ。出力の末尾には改行をいれること。
なお、出力は、どちらの数字も $ 2 $ × $ 10^9 $ 以下の 整数でなければならない。
输入输出样例
输入样例 #1
10
输出样例 #1
6 3
输入样例 #2
3921225
输出样例 #2
101 5
说明
### Sample Explanation 1
$ 6 $ 段目、 $ 3 $ 番目の数字は $ 10 $ です。他に $ 6 $ 段目 $ 4 $ 番目なども条件を満たしますが、どの出力をしても問題ありません。
### Sample Explanation 2
ある程度大きな数字が入力されることもあります。