No.2969 ローラン単項式の微分
タグ : / 解いたユーザー数 63
作問者 : 👑 p-adic / テスター : hiro1729
問題文
まずは記法の導入です。各整数 $n, m$ に対し、正実数全体の集合を定義域に持つ実数値関数 $f_{n,m}$ を
$\displaystyle f_{n,m}(x) = n x^m $
と定義します。いかなる整数 $n,m$ に対しても $f_{n,m}$ は微分可能であることが証明可能であり、$f_{n,m}$ の導関数を $f'_{n,m}$ と表します。
微分について知らない人向けの説明はこちらです。(クリックで開く)
$f$ を正実数全体の集合を定義域に持つ実数値関数(つまり正実数を代入して実数の値を取る関数)とします。$f$ が微分可能であるとは、いかなる正実数 $x_0$ に対しても極限
$\displaystyle \lim_{x \to x_0} \frac{f(x) - f(x_0)}{x - x_0} $
が収束するということです。上式の極限値は $f$ の $x_0$ における微分係数と呼ばれ、$f'(x_0)$ と書き表されます。$f$ が微分可能である時、各正実数 $x$ に対し $f'(x)$ を返す関数 $f'$ が定義されますが、これを $f$ の導関数と呼びます。
$n,m$ を整数とします。上で述べたように $f_{n,m}$ は微分可能であることが知られており、その導関数 $f'_{n,m}$ は $m f_{n,m-1}$ と表せることも知られています。定義を復習すると、$f_{n,m}$ と $m f_{n,m-1}$ は正実数全体で定義された実数値関数であり
$\displaystyle \begin{array}{rcl} \displaystyle f_{n,m}(x) &\displaystyle = &\displaystyle n x^m \\ \displaystyle m f_{n,m-1}(x) &\displaystyle = &\displaystyle mn x^{m-1} \\ \end{array} $
と表されます。以上の情報をもとに、この問題に答えてください。
入力に $2$ 個の整数 $N, M$ が与えられます。
$f'_{N,M} = f_{n,m}$ を満たす整数の組 $(n,m)$ がちょうど $1$ つだけ存在するか否かを判定し、ちょうど $1$ つだけ存在する場合はそのような $(n,m)$ を求めてください。
入力
入力は以下の形式で標準入力から $1$ 行で与えられます:
- $1$ 行目に $N, M$ が半角空白区切りで与えられます。
$N$ $M$
制約
入力は以下の制約を満たします:
- $N$ は $-10^9 \leq N \leq 10^9$ を満たす整数である。
- $M$ は $-10^9 \leq M \leq 10^9$ を満たす整数である。
出力
$f'_{N,M} = f_{n,m}$ を満たす整数の組 $(n,m)$ がちょうど $1$ つだけ存在する場合は $1$ 行目にYes
と出力し、$2$ 行目にそのような $n,m$ を半角空白区切りで出力してください。
Yes $n$ $m$
そうでない場合は $1$ 行目にNo
と出力してください。
No
最後に改行してください。
サンプル
サンプル1
入力
1 1
出力
Yes 1 0
正実数全体の集合を定義域に持つ実数値関数 $f_{N,M}(x) = 1 x^1$ の導関数は $1 x^0$ と表せ、これは $f_{1,0}$ と一致します。$(1,0)$ 以外に $f'_{N,M} = f_{n,m}$ を満たす整数の組 $(n,m)$ は存在しません。
サンプル2
入力
4 0
出力
No
正実数全体の集合を定義域に持つ実数値関数 $f_{N,M}(x) = 4 x^0$ の導関数は $0$ のみを値に取る定数関数であり、これは $f_{0,0}$ や $f_{0,1}$と一致します。すなわち $f'_{N,M} = f_{n,m}$ を満たす整数の組 $(n,m)$ として $(0,0)$ と $(0,1)$ の複数が取れてしまうので、そのような $(n,m)$ がちょうど $1$ つだけ存在するという主張は正しくありません。
サンプル3
入力
-100000 -100000
このように入力が負のことがあるので気をつけてください。
出力
Yes 10000000000 -100001
このように答えが32bit整数に収まらないことがあるので気をつけてください。
提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。