航天飞行器是一种复杂而又精密的仪器,飞行器的损耗主要集中在发射和降落的过程,科学家根据实验数据估计,如果在发射过程中,产生了 x 程度的损耗,那么在降落的过程中就会产生 x2 程度的损耗,如果飞船的总损耗超过了它的耐久度,飞行器就会爆炸坠毁。问一艘耐久度为 h 的飞行器,假设在飞行过程中不产生损耗,那么为了保证其可以安全的到达目的地,只考虑整数解,至多发射过程中可以承受多少程度的损耗?
数据范围:
每个输入包含一个测试用例。每个测试用例包含一行一个整数 h (1 <= h <= 10^18)。
输出一行一个整数表示结果。
10
2
1
0
#耐久度 h ,发射损耗x满足:x + x **2 <= h ####1 ''' h = int(input()) x = 0 for i in range(1,h+1): h0 = i + i ** 2 if h0 > h: x = i-1 break print(x) ''' ''' 您的代码已保存 运行超时:您的程序未能在规定时间内运行结束,请检查是否循环有错或算法复杂度过大。 case通过率为70.00% ''' ########################## ####2 #由x + x **2 <= h得:x <= (h + 0.25)** 0.5 - 0.5 h = int(input()) x = int((h + 0.25)** 0.5 - 0.5) print(x)
import math h = int(input()) x = math.floor(-1 + math.sqrt(1 + 4 * h) ) / 2 print(int(x))