问题 6012 --最少数量2

6012: 最少数量2★★★

时间限制: 1 Sec  内存限制: 128 MB
提交: 31  解决: 16
[提交][状态][命题人:]

题目描述

给定一个正整数nn<=1000),将正整数n分解成m个完全平方数之和,m最小等于几?这m个完全平方数又等于几?比如5,可分解为51的平方之和; 也可以分解为2^2+1^2,则m等于2,这m个数等于14

又比如12,可分解为121的平方之和; 也可以分解为3^2+1^2+1^2+1^2,  也可以分解为2^2+2^2+2^2,则m等于3,这m个数等于444

输入

输入一个正整数n,表示要被分解的数。

输出

第一行输出一个整数m

第二行m个完全平方数(若存在多组解,输出字典序最小的一组)。

样例输入
Copy
12
样例输出
Copy
3
4 4 4

提示

来源

[提交][状态]