魔法数字

 分析:贪心加回溯

  

import java.util.*;


public class Solution {
    /**
     * 返回最后要输出的答案
     * @param n int整型 表示牛牛的数字
     * @param m int整型 表示牛妹的数字
     * @return int整型
     */
    public int solve (int n, int m) {
        // write code here
        
        // n -> m
        if(n >= m) return n - m;
        int k = 1;
        while(k * k < m) k++;
        if(k * k - m > m - (k-1)*(k-1)) k--;
        return Math.min(m-n,solve(n,k) + 1 + Math.abs(m-k*k));
       
    }
}
原文地址:https://www.cnblogs.com/yonezu/p/13409777.html