連接:https://www.nowcoder.com/questionTerminal/0c16f758949f4d17ab73a9a1ffe7ab9b
來源:牛客網 python
牛家莊幼兒園爲慶祝61兒童節舉辦慶祝活動,慶祝活動中有一個節目是小朋友們圍成一個圓圈跳舞。牛老師挑選出n個小朋友參與跳舞節目,已知每一個小朋友的身高h_i。爲了讓舞蹈看起來和諧,牛老師須要讓跳舞的圓圈隊形中相鄰小朋友的身高差的最大值最小,牛老師犯了難,但願你能幫幫他。
如樣例所示:
當圓圈隊伍按照100,98,103,105順時針排列的時候最大身高差爲5,其餘排列不會獲得更優的解code
輸入包括兩行,第一行爲一個正整數n(3 ≤ n ≤ 20)
第二行爲n個整數h_i(80 ≤ h_i ≤ 140),表示每一個小朋友的身高。排序
n = int(input()) l = [int(x) for x in input().split(' ')] l.sort() ans = 0 for i in range(2, n): ans = max(ans, l[i] - l[i-2]) print(ans)
先排序,而後最佳的排列方案是:奇數位置和偶數位置分爲兩隊,兩隊首尾相接。get
這樣最大身高差是:整個隊伍排序後,間隔一位的任意兩我的中的最大身高差input
歡迎來個人博客: https://codeplot.top/
個人博客刷題分類:https://codeplot.top/categories/%E5%88%B7%E9%A2%98/博客