我真不是红中 2023-01-03 10:24 采纳率: 0%
浏览 15
已结题

Python分治问题

原题

img


想用python解


```python
loss = input()
list = sorted(map(int,input().split()))
print(list[1])

结果为


答案错误50
  • 写回答

1条回答 默认 最新

  • ShowMeAI 2023-01-03 10:35
    关注

    如果要体现分治思路,可以在过程中做一下分治处理,参考代码如下

    def find_second(arr):
        if len(arr) < 2:
            return None
        elif len(arr) == 2:
            return arr[1]
        else:
            mid = len(arr) // 2
            left = find_second(arr[:mid])
            right = find_second(arr[mid:])
            if left is not None and right is not None:
                return min(left, right)
            elif left is not None:
                return left
            else:
                return right
    
    n = int(input())
    arr = list(map(int, input().split()))
    
    # 排序
    arr.sort()
    
    print(find_second(arr))
    
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月5日
  • 创建了问题 1月3日