#1900. 2904. 平方和

2904. 平方和

#2904. 平方和

题目描述

给定一个整数N,求N最少可以拆成多少个完全平方数的和。

输入格式

第一行一个整数TEST,表示数据组数。
接下来TEST行,每行一个整数N。

输出格式

TEST行,每行一个正整数,表示N最少可以拆成多少个完全平方数的和。
数据规模
30.的数据N≤10^6
60.的数据N≤10^9
100.的数据0≤N≤10^18 ,TEST<=1000

样例

样例输入

100  

413357  

567226  

766291  

597007  

289611  

215529  

447134  

752252  

909135  

417563  

670529  

352031  

701607  

572137  

496749  

255907  

378796  

230963  

494529  

161665  

666286  

452501  

151438  

159400  

219949  

734385  

710191  

511396  

301481  

551313  

66085  

521105  

689271  

434686  

847795  

170279  

440002  

65045  

412023  

869097  

267979  

676069  

804733  

763105  

109680  

363401  

342369  

946171  

854070  

118270  

140876  

418701  

188885  

244835  

546031  

951915  

43116  

371241  

662373  

405770  

860997  

804541  

370429  

727579  

524737  

152311  

534711  

304961  

133376  

218042  

129476  

205601  

255901  

187633  

276681  

950717  

818885  

643601  

533551  

600877  

97499  

63961  

556358  

335433  

781818  

981445  

331701  

772401  

985669  

452851  

908701  

213201  

214483  

817710  

757033  

605386  

442987  

315634  

599486  

221667  

样例输出

3  

3  

3  

4  

3  

3  

3  

4  

4  

3  

3  

4  

4  

2  

3  

3  

3  

3  

3  

3  

3  

3  

3  

2  

3  

3  

4  

2  

3  

3  

2  

2  

4  

3  

3  

4  

3  

2  

4  

3  

3  

2  

3  

3  

4  

2  

2  

3  

3  

3  

3  

3  

2  

3  

4  

3  

3  

3  

2  

2  

3  

2  

3  

3  

3  

4  

4  

2  

2  

2  

2  

3  

2  

2  

3  

2  

3  

3  

4  

2  

3  

3  

3  

3  

3  

3  

3  

3  

2  

3  

2  

2  

3  

3  

3  

2  

3  

3  

3  

3  

数据范围与提示

题解:JudgeOnline/upload/201604/sol.doc