สมมติว่าเรามีตัวเลขเริ่มต้นและสิ้นสุดหมายเลขอื่น (เริ่มต้น
ดังนั้น หากอินพุตเป็น start =5, end =11 ผลลัพธ์จะเป็น 2 เนื่องจากเราสามารถคูณ 2 ได้ 10 แล้วบวก 1 เพื่อให้ได้ 11
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution:
def solve(self, start, end):
ct=0
while(end/2>=start):
if end%2==1:
end-=1
end=end/2
ct+=2
else:
end=end/2
ct+=1
ct+=(end-start)
return ct
ob = Solution()
print(ob.solve(5,11))
อินพุต
5,11
ผลลัพธ์
2