華為 OD 機考:勾股數(shù)元組
華為 OD 機試【4 大寶典】再次上新題!
① Python 解華為機試題 :https://dream.blog.csdn.net/article/details/129221789
② C++ 解華為機試題:https://dream.blog.csdn.net/article/details/129472919
③ Java 解華為機試題:https://dream.blog.csdn.net/article/details/129652513
④ C 解華為機試題:https://dream.blog.csdn.net/article/details/129658432
華為 OD 機考:勾股數(shù)元組
如果 3 個正整數(shù)(a,b,c)滿足 a2 + b2 = c2 的關(guān)系,則稱(a,b,c)為勾股數(shù)(著名的勾三股四弦五),為了探索勾股數(shù)的規(guī)律,我們定義如果勾股數(shù)(a,b,c)之間兩兩互質(zhì)(即 a 與 b,a 與 c,b 與 c 之間均互質(zhì),沒有公約數(shù)),則其為勾股數(shù)元祖(例如(3,4,5)是勾股數(shù)元祖,(6,8,10)則不是勾股數(shù)元祖)。請求出給定范圍[N,M]內(nèi),所有的勾股數(shù)元祖。
輸入輸出描述:
輸入描述:
起始范圍 N,1 <= N <= 10000
結(jié)束范圍 M,N < M <= 10000
輸出描述:
a,b,c 請保證 a < b < c,輸出格式:a b c;
多組勾股數(shù)元祖請按照 a 升序,b 升序,最后 c 升序的方式排序輸出;
給定范圍中如果找不到勾股數(shù)元祖時,輸出”NA”。
示例 1:
輸入
1
20
輸出
3 4 5
5 12 13
8 15 17
題解地址 ??
?? 華為 OD 機考 JAVA?https://dream.blog.csdn.net/article/details/129052829
?? 華為 OD 機考 Python?https://dream.blog.csdn.net/article/details/129191549
?? 華為 OD 機考 C++?https://dream.blog.csdn.net/article/details/129201772
?? 華為 OD 機考真 C 語言?https://dream.blog.csdn.net/article/details/129371440
?? 華為 OD 機考 JS?https://dream.blog.csdn.net/article/details/129351450
?? 華為 OD 機考 Golang?https://dream.blog.csdn.net/article/details/130756157
華為 OD 機試
華為 OD 機試是一種面向開發(fā)人員的在線筆試,旨在測試開發(fā)人員的編程能力、算法基礎(chǔ)和基礎(chǔ)知識掌握情況。
一、題目解析
華為 OD 機試的編程題則考察開發(fā)人員的編程能力、算法基礎(chǔ)和解決問題的能力。
二、考點分析
數(shù)據(jù)結(jié)構(gòu):鏈表、棧、隊列、二叉樹等。
算法基礎(chǔ):排序、查找、分治、動態(tài)規(guī)劃、貪心等。
編程語言特性:語法、標(biāo)準(zhǔn)庫、常用操作等。
系統(tǒng)設(shè)計:數(shù)據(jù)庫設(shè)計、系統(tǒng)架構(gòu)、網(wǎng)絡(luò)通信等。
三、解題思路
編程題:首先讀懂題目,明確題目要求和輸入輸出格式。然后分析問題,選擇合適的算法和數(shù)據(jù)結(jié)構(gòu)解決問題。在編寫代碼的過程中,要注意代碼的簡潔性、可讀性和健壯性。
四、代碼示例
選擇題代碼示例:給定一個整數(shù)數(shù)組,找出數(shù)組中第二大的元素。
def find_second_largest(nums):
? ?largest = -1
? ?second_largest = -1
? ?for num in nums: ? ? ? ?if num > largest:
? ? ? ? ? ?second_largest = largest
? ? ? ? ? ?largest = num ? ? ? ?elif num > second_largest and num < largest:
? ? ? ? ? ?second_largest = num ? ?return second_largest
編程題代碼示例:給定一個字符串,找出其中的最長回文子串。
def longest_palindrome(s): ? ?if len(s) < 2: ? ? ? ?return s
? ?max_len = 1
? ?start = 0
? ?for i in range(len(s)): ? ? ? ?if i - max_len >= 1 and s[i - max_len - 1:i + 1] == s[i - max_len - 1:i + 1][::-1]:
? ? ? ? ? ?start = i - max_len - 1
? ? ? ? ? ?max_len += 2
? ? ? ? ? ?continue
? ? ? ?if s[i - max_len:i + 1] == s[i - max_len:i + 1][::-1]:
? ? ? ? ? ?start = i - max_len
? ? ? ? ? ?max_len += 1
? ?return s[start:start + max_len]
五、總結(jié)
華為 OD 機試是一種針對開發(fā)人員的在線筆試,主要考察開發(fā)人員的編程能力、算法基礎(chǔ)和基礎(chǔ)知識掌握情況。在準(zhǔn)備機試時,需要加強算法和數(shù)據(jù)結(jié)構(gòu)的訓(xùn)練,同時還要熟悉常用的編程語言和開發(fā)工具。在解題時,需要仔細讀題,理清思路,選擇合適的方法解決問題。最后,要注意代碼的簡潔性、可讀性和健壯性。