網易面試題之 航天飛行器是一項複雜而又精密的儀器,飛行器的損耗主要集中在發射和降落的過程, * 科學家根據實驗數據估計,如果在發射過程中,產生了 x 程度的損耗,那麼在降落的過程中就會產生 x2

package wangyi;

/**
 * Created by Administrator on 2016/12/7.
 *   航天飛行器是一項複雜而又精密的儀器,飛行器的損耗主要集中在發射和降落的過程,
 *   科學家根據實驗數據估計,如果在發射過程中,產生了 x 程度的損耗,那麼在降落的過程中就會產生 x2
 *   程度的損耗,如果飛船的總損耗超過了它的耐久度,飛行器就會爆炸墜毀。問一艘耐久度爲 h 的飛行器,
 *   假設在飛行過程中不產生損耗,那麼爲了保證其可以安全的到達目的地,
 *   只考慮整數解,至多發射過程中可以承受多少程度的損耗?
 */


import java.math.BigInteger;

import java.util.Scanner;



public class Test3 {

    private static long h;



        public static void main(String[] args) {

        Scanner scan = new Scanner(System.in);

        h = scan.nextLong();
        long s = 0, e = h;

        long result = 0;

        BigInteger rh = BigInteger.valueOf(h);

        while(s + 1< e) {

        long mid = (s + e) / 2;

        BigInteger r = BigInteger.valueOf(mid);

        BigInteger r1 = BigInteger.valueOf(mid
        + 1);

        r = r.multiply(r1);

        if(r.compareTo(rh) <= 0) {

        s = mid;

        result = mid;

        } else{

        e = mid;
        }
        }

        System.out.println(result);
        scan.close();
        }
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章