Cidoai的幂次序列
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

给定 n,k,你需要构造一个长为 m 的正整数序列 a,满足 2 \le m \le k,\sum_{i=0}^{m-1} a_i^{a_{(i+1) \bmod m}}=n
(注:右上角为 a_{(i+1)\bmod m},取模符号在下标处。)
你需要保证对于所有 a_i 都有 0< a_i \le n

输入描述:

一行两个正整数分别表示 n,k

输出描述:

第一行输出一个正整数 m 表示序列 a 的长度。
第二行 m 个正整数按顺序表示 a_0,a_1,\dots,a_{m-1}
示例1

输入

复制
2244 5

输出

复制
3
2 3 7

备注:

对于所有数据,2 \le n \le 10^{18},2 \le k \le 10^6