CF933B.A Determined Cleanup
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
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).
为了辞旧迎新,大扫除是必不可少的。
小汤米发现了一个古老的多项式,并通过对其取模另一个多项式的方式进行了“清理”。但现在他后悔这么做了……
给定两个整数 p 和 k,请找出一个多项式 f(x),其所有系数均为非负整数且严格小于 k,且当 f(x) 除以 (x+k) 时,余数为 p。即满足
f(x)=q(x)⋅(x+k)+p,
其中 q(x) 是某个多项式(其系数不一定是整数)。
输入格式
The only line of input contains two space-separated integers p and k (1 ≤ p ≤ 1018, 2 ≤ k ≤ 2 000).
输入仅包含一行,其中有两个以空格分隔的整数 p 和 k(1 ≤ p ≤ 1018,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
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;否则输出两行。
第一行输出一个非负整数 d —— 多项式的系数个数。
第二行输出 d 个用空格分隔的整数 a0, a1, …, ad−1,描述一个满足给定要求的多项式
。你的输出需满足对所有 0≤i≤d−1 都有 0≤ai<k,且 ad−1=0。
若存在多个可行解,输出任意一个即可。
输入输出样例
输入#1
46 2
输出#1
7 0 1 0 0 1 1 1
输入#2
2018 214
输出#2
3 92 205 1
说明/提示
In the first example, f(x) = _x_6 + _x_5 + _x_4 + x = (_x_5 - x_4 + 3_x_3 - 6_x_2 + 12_x - 23)·(x + 2) + 46.
In the second example, f(x) = x_2 + 205_x + 92 = (x - 9)·(x + 214) + 2018.
在第一个例子中,f(x)=x6+x5+x4+x=(x5−x4+3x3−6x2+12x−23)⋅(x+2)+46。
在第二个例子中,f(x)=x2+205x+92=(x−9)⋅(x+214)+2018。
输入解题思路,AI测评打分。不知道怎么写?