U646526 pre 找数字

题目背景

pre 试图找到完美的数字! PRE 杯(#2026.1.14 Lv.2)T1(CF1400)。

题目描述

pre 认为一个数字 $S$ 是**完美的**,当且仅当存在: $$\Big ( \lfloor \dfrac {S} {10 ^ {a_1}} \rfloor + \lfloor \dfrac {S \mod 10 ^ {a_1}} {10 ^ {a_2}} \rfloor + \ldots + \lfloor \dfrac {S \mod 10 ^ {a_{n - 1}}} {10 ^ {a_n}} \rfloor \Big ) ^ 2 = S$$ 其中的序列 $\{a_i\}$ 必须满足: $1.$ $a_1$ 是第一个元素,$a_n$ 是最后一个元素,元素下标连续。 $2.$ $\forall j \in [1,n]$ 且 $j \in \mathbb {Z}$,$a_j \in \mathbb {Z}$. $3.$ $\forall j \in [1,n - 1]$ 且 $j \in \mathbb {Z}$,$a_j > a_{j + 1}$. $4.$ $a_1 \le 9$, $a_n = 0$. 对应的,$\{a_i\}$ 决定了 $\{ b_i \}$: $$\{ b_i \} = \{ \lfloor \dfrac {S} {10 ^ {a_1}} \rfloor , \lfloor \dfrac {S \mod 10 ^ {a_1}} {10 ^ {a_2}} \rfloor , \ldots , \lfloor \dfrac {S \mod 10 ^ {a_{n - 1}}} {10 ^ {a_n}} \rfloor\}$$ 其中的序列 $\{b_i\}$ 若满足: $1.$ $b_1$ 是第一个元素,$b_n$ 是最后一个元素,元素下标连续。 $2.$ $\forall j \in [1,n]$ 且 $j \in \mathbb {Z}$,$b_j \in \mathbb {N}$. $3.$ $b_1 > 0$. 则认为 $\{a_i\}$ 是**符合条件**的。 对应的,$\{b_i\}$ 决定了 $\{c_i \}$: $$\ c_i \ = \begin{cases} 1 &\text{if } b_i = 0 \\ \lfloor \lg b_i \rfloor + 1&\text{if } b_i > 0 \end{cases}$$ 若 $\sum_1^n c_i = \lfloor \lg S \rfloor + 1$ 则认为 $\{b_i\}$ 是**符合条件**的。 现在 pre 给你一个正整数,判断它是不是完美的。如果是,则顺序输出关于一种 **符合条件**的 $\{a_i\}$ 的**符合条件**的数列 $\{b_i\}$,并在开始时输出它的元素个数,反之直接输出 $-1$。(容易证明若存在符合条件的 $\{a_i\}$,则存在同时符合条件 $\{a_i\}$ 和对应的 $\{b_i\}$) :::info[简单表达] 给一个数,将它连续不相交的分成若干份,每份不能有前导零,使所有份的和的平方等于原来的数,输出对应的方案或回复无解。 :::

输入格式

一行,一个正整数。

输出格式

两行或一行,输出 $\{b_i\}$ 及它的元素个数,或直接输出 $-1$。

说明/提示

对于 $100 \%$ 的数据,$1 \le S \le 10 ^ 9$。 你的所有测试点的输出全部正确,你将得到 $100$ 分,反之 $0$ 分。