解决方案 »

  1.   

    param 和 num 分别代表什么?是简单的求平方和吗,还是其他要求?
      

  2.   


    param就是 和
    num 代表后面有几个数。比如 param=32  num= 232=?^2+?^2  (2个问号代表2个数 就是num)然后就是求出平方和
      

  3.   

    哦,没看清楚,有个num参数限制数字个数了
      

  4.   

    num个数字X的平方和为param;
    是不是可以写个等式X^2+X^2+...+X^2(共num个)=param;
    所以X^2 = param/num;
    是不是这么个意思?
      

  5.   

    你在2L回复1L说param是和,num是后面几个数;
    你在顶楼里的代码又说param = 3;num = 12;
    你自己确定搞清楚了么= =
      

  6.   

    package hi;public class SumPower2 {

    public static void main(String[] args) {
    int param = 2;
            int num = 85;
            
            System.out.println(num + "=" + getSumPower2(num,param));
            
            
    }

    public static String getSumPower2(int num,int param){

    if(param ==1){
    double a =  Math.sqrt(num);
    int b = (int)a;
    if(a == b)
    return String.valueOf(b)+"^2";

    return "FALSE"; }
    int i=1;
    while(i<=Math.sqrt(num)){
    String ret = getSumPower2(num - i*i,param-1);
     if(!ret.equals("FALSE"))
     return ret + "+" + i+"^2";
     i++;
    }

    return "FALSE";

    }}
      

  7.   

    如果通过穷举法的话,则需要param的num次方次计算,需要找找有没有好的算法,楼主要是有了答案也通知一下大家