阿里笔试编程题第二题(优惠券使用)
Python代码:
mylist=[] try: while True: i=[int(x) for x in raw_input().split()] mylist.append(i) if i == "": break except: pass num=mylist[1] m=mylist[0][0] 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: 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)