2020 360實習校招算法筆試題

使用Python3

題目1:DNA匹配

題目描述:有一種特殊的DNA,僅僅由核酸A和T組成,長度爲n,順次連接。科學家有一種新的手段,可以改變這種DNA。每一次,科學家可以交換該DNA上兩個核酸的位置,也可以將某個特定位置的核酸修改爲另一種核酸。現在有一個DNA,科學家希望將其改造成另一種DNA,希望你計算最少的操作次數。
輸入:

輸入包含兩行,第一行爲初始的DNA,第二行爲目標的DNA,保證長度相同。

輸出

輸出最少的操作次數

樣例輸入

ATTTAA
TTAATT

樣例輸出

3

提示

對於100%的數據,DNA長度小於等於100000
樣例解釋:
1.首先修改第一個位置的核酸(從A修改爲T)
2.交換3和5位置的核酸
3.交換4和6位置的核酸

題目2:抽獎

題目描述:A和B兩個人在抽獎。現在有一個抽獎箱,裏面有張中將票,m張不中獎票。A和B輪流從中那個抽一張獎票出來。如果有人抽到中獎票就結束,抽到中獎票的人勝利。抽過的獎票會被丟棄。額外的,B每次抽後,會再次抽取一張票並丟棄掉(這張票中獎不算B勝利)。現在,A先抽,請問A的勝率,保留4位小數後輸出。如果兩人到最後也沒有抽到中獎票算作B勝利。
輸入

輸入兩個數字n,m,代表中獎票和不中獎票的數量(0<=n,m<=1000)

輸出

輸出A的勝率,保留4位小數。

樣例輸入

2 3

樣例輸出

0.6000

提示

樣例輸入2
1 3
樣例輸出2
0.5000
樣例二解釋:
如果A第一輪抽到中獎票,A勝利,概率0.25。
如果A第二輪抽到中獎票,情況爲A第一輪沒有抽到中獎票,B也沒有抽到中獎票,並且B丟棄掉的獎票也不是中獎票。概率位3/4 * 2/3 * 1/2 = 0.25。
綜上,中獎率爲0.5。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章