a、對於一顆滿二叉排序樹深度為k,節點數是2^k-1;節點值為1至2^k-1。給出k和任意三個節點的值,輸出包含該三個節點的最小子樹的根節點值b、滿二叉排序樹的中序是乙個有序的序列 即左子樹都比根節點小,右子樹都比根節點大 根節點為左節點與右節點值和的一半
c、樣例輸入:4 10 15 13
d、樣例輸出:12
#code=utf-8
import sys
import math
if __name__=="__main__":
mylist=list(map(int,sys.stdin.readline().strip().split()))
#儲存任意輸入的三個節點值
node1=mylist[1]
node2=mylist[2]
node3=mylist[3]
#根節點為左節點與右節點值和的一半
root=math.pow(2,mylist[0])/2.0
leftnode=1
#初始化左節點為最小1
rightnode=math.pow(2,mylist[0])-1
#初始化2^k-1節點數
for i in range(mylist[0]): #遍歷深度k次數
#給出的三個節點數都比根節點值小,則說明都在左子樹,更新右節點數值和根節點值
if(node1and (node2and (node31
root=(rightnode+leftnode)/2
#給出的三個節點數都比根節點值大,則說明都在右子樹,更新左節點數值和根節點值
elif(node1>root) and (node2>root) and (node3>root):
leftnode=root+1
root=(rightnode+leftnode)/2
#給出的三個節點數至少有乙個比根節點值小,至少有乙個比根節點大,則說明此根節點值為該三個節點的最小子樹的根節點值
else:
print
int(root)
break
python面試之騰訊測試開發工程師
1 假定我有100m的乙個文字資料,但是我的電腦記憶體只有10m,我怎麼在有限的資源條件的情況下,找出這個文字 現次數最多的那一行字串?解決思路 說來也巧,其實這不難,只是有時候突然沒了思路,靈感來自於乙個小學妹的一句話,他最近在搞數學競賽,我想,數學。數字,我將字串轉成數字不就成了,但是怎麼轉成特...
SDET 測試開發工程師
不一樣的sdet 首先,我要強調的是這篇文章討論的是微軟的 software development engineer in test,中文翻譯為測試開發工程師,簡稱sdet。不同於以手工或者指令碼幫助測試的軟體測試工程師 ste,software test engineer sdet是用程式設計方...
測試開發工程師的發展
1.技術含量 面試過許多的應屆畢業生,問及為什麼選擇測試開發這個職位時,經常聽到以下的回答 我覺得自己開發能力比較弱,但我比較細心,覺得測試職位比較適合。我在實驗室和實習公司呆過,做過功能測試和效能測試,我比較喜歡測試.無論人們內心真實的想法是什麼,但潛意識裡面測試的技術含量沒有開發高。在校園招聘的...