题库练习 A Determined Cleanup
← 上一题 下一题 →

A11626 | A Determined Cleanup

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

In order to put away old things and welcome a fresh new year, a thorough cleaning of the house is a must.

Little Tommy finds an old polynomial and cleaned it up by taking it modulo another. But now he regrets doing this...

Given two integers $p$ and $k$ , find a polynomial $f(x)$ with non-negative integer coefficients strictly less than $k$ , whose remainder is $p$ when divided by $(x+k)$ . That is, $f(x)=q(x)·(x+k)+p$ , where $q(x)$ is a polynomial (not necessarily with integer coefficients).

输入格式

The only line of input contains two space-separated integers $p$ and $k$ ( $1<=p<=10^{18}$ , $2<=k<=2000$ ).

输出格式

If the polynomial does not exist, print a single integer -1, or output two lines otherwise.

In the first line print a non-negative integer $d$ — the number of coefficients in the polynomial.

In the second line print $d$ space-separated integers $a_{0},a_{1},...,a_{d-1}$ , describing a polynomial ![](/uploads/acgo/image/dafe8585d86829cd_00f1071458c0.jpeg) fulfilling the given requirements. Your output should satisfy $0<=a_{i}<k$ for all $0<=i<=d-1$ , and $a_{d-1}≠0$ .

If there are many possible solutions, print any of them.

输入输出样例

输入 #1
46 2
输出 #1
7
0 1 0 0 1 1 1
输入 #2
2018 214
输出 #2
3
92 205 1
C++ 编辑器
输入
输出