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();
}
}
网易面试题之 航天飞行器是一项复杂而又精密的仪器,飞行器的损耗主要集中在发射和降落的过程, * 科学家根据实验数据估计,如果在发射过程中,产生了 x 程度的损耗,那么在降落的过程中就会产生 x2
最新推荐文章于 2017-11-15 09:03:50 发布