华为2019年校招(20届实习)机考题python版解答与思路(2019-3-13软件题)
生活随笔
收集整理的這篇文章主要介紹了
华为2019年校招(20届实习)机考题python版解答与思路(2019-3-13软件题)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
試題為今天考試時記下,記于此僅做學習分享。侵刪。
答案思路僅供參考,肯定有更優的辦法!第三題沒解出來,歡迎大家評論提點!
第一題:
這道題對輸入做切分(調用split()方法)后,進行反復的10-2進制轉換即可。
注意點:按位與用單個“&”符號。
第二題:
這道題可以參考LeetCode85:https://blog.csdn.net/u014626513/article/details/81381948
這種思路是比較清晰的:遍歷每一行的每個元素,進行向下(列方向)和向右(行方向)的搜索并計數,從而得到以每個元素為左上角頂點的最大正方形。此處還可以優化一下減少運算量,即遍歷元素時,若該元素右邊或下邊的元素個數已經少于目前得到的最大正方形的邊長,那么就直接停止遍歷搜索。
高級一點的思路:采用動態規劃,用計數矩陣記錄個數,運算量更少。
第三題:
?
沒有通過。(case通過率30%)
主要難點在于打掉的怪獸會變成陸地(1),那么就要更新矩陣,重新搜索當前點到下一個最近等級的怪獸的路徑,如果遍歷可能運算量會爆炸,采用深度優先算法,優先查詢未走過的路,可能運算速度會快一些。
總結
以上是生活随笔為你收集整理的华为2019年校招(20届实习)机考题python版解答与思路(2019-3-13软件题)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 致力语言资源建设、常识推理的自然语言处理
- 下一篇: 注册第一次练习