#1082. 速算大师小 R

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: TosakaUCW

题目描述

小 R 有一个二进制计算器,他最爱做的事情就是在计算器里面敲一个数字 ,然后在后面敲一大堆数字 ,最后再把这个敲出来的二进制数减去 。这样一来,最高位的 就消失了,而底下所有的 全都变成了

比如说小 R 在敲完一个 之后,又接着敲了 ,这样一来计算器上就出现了二进制数 。之后小R将这个二进制数减去 ,这个二进制数就变成了

发现这个规律后,小 R 对外宣称自己拥有比肩计算器的计算速度,每次他都会在一个 后面加一大堆 ,然后利用规律快速地算出这个数字减去 的结果,这使他成为了附近一名小有名气的速算家。

一天大 G 拿出了一个显示 500 位数字的十进制计算器,让小 R 把按照上述步骤算出的二进制数转化成显示在大 G 计算器上的十进制数,这可让不学无术的小 R 犯了难,你能写一个程序帮助小 R 吗?

输入格式

包含一个整数 ,表示小 R 一开始在二进制计算器的数字 后面加了 个数字

输出格式

第一行:小 R 经过一系列操作得到的二进制数转化成十进制数之后的位数。

接下来十行:小 R 得到的二进制数转化成的十进制数的最后 位。(每行位)。

样例

【样例 1 输入】

5

【样例 1 输出】

2
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000031

【样例 1 解释】

在样例1中,小R先是在二进制计算器上敲出(后面接),然后把它减去变成了,转换成十进制变成了。十进制表示下一共有两位,因此第一行输出

接下来十行输出最后位数字,不足位用前导零补齐。

【样例 2 输入】

114514

【样例 2 输出】

34473
06039385940082503997439853299834664612891959652517
23036176482706204417021409750828942168342909176212
55856375178423803238549121053770125340543653926279
16089586509253507785288203169919084211055485165146
52400276344062315722466147240824207113143626366168
51921562498900602789787888262467250158827400620311
91089075176310413581178226795043313352560007818168
40263438091768604886316014812205775200326356123049
59987320205375095846878893005007069260091745701070
42484977120682560894015507894244455346291169296383

数据范围与提示

测试点编号