c++ 终止 超时_C++一直超时,如何优化

楼上都是瞎说 这题其实考的是二分搜索hehe~

--------------分割线--------

作为一个后端的nodejs新手 我决定用lua来实现给你看

local MAX = 48 -- 我是渣渣看错2^32 和10^32次了

local MIN = 1

local fib = {}

fib[1] = 1

fib[2] = 1

local i

for i=3, MAX do

fib[i] = fib[i-1] + fib[i-2]

end

function fibFloor(x, max, min)

if max == min+1 then

return fib[min]

else

local mid = math.floor((max+min)/2)

if (fib[mid] > x) then

return fibFloor(x, mid, min)

elseif (fib[mid] == x) then

return fib[mid]

else --if (fib[mid] < x) then

return fibFloor(x, max, mid)

end

end

end

local n = io.read("*num")

for i=1, n do

local x = io.read("*num")

print(fibFloor(x, MAX, MIN))

end

看了楼下答案以后默默把MAX改成48...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值