修改后方便本地调试的Python3代码:
m=int(input())
num=[int(x) for x in input().split()]
def func(m,num):
    if sum(num)<2*m:
        return -1
    else:
        M=[]
        for i in range(len(num)):
            if sum(num[:i]+num[i+1:])>=2*m and len(num[:i]+num[i+1:])>2:
                M.append(num[i])
            else:
                a=num[:i]+num[i+1:]
                if sum(num[:i]+num[i+1:])>=2*m and a[0]>=300 and a[1]>=300:
                    M.append(num[i])
        if len(M)==0:
            return sum(num)
        else:
            num.remove(max(M))
            return func(m,num)
print('%.1f'%func(m,num))