触宝笔试

import sys

if __name__ == "__main__":
    # 读取第一行的n
    T = int(sys.stdin.readline().strip())
    for i in range(T):
        # 读取第一行
        line = sys.stdin.readline().strip()
        # 把每一行的数字分隔后转化成int列表
        values = map(int, line.split())
        values = list(values)
        n = values[0]
        m = values[1]
        a = values[2]
        b = values[3]
        X = values[4]
        #判定数字范围
        if (m in range(1,21)) and (n in range(1,21)) and (a in range(1,n+1))\ 
            and (b in range(1,m+1)) and (X in range(1,10000000+1)):
            #读取n个红球体积
            v = sys.stdin.readline().strip()
            v = map(int, v.split())
            v = list(v)
            v = sorted(v)
            sum_vn = sum(v[0:a])
            #读取m个蓝球体积
            xb = sys.stdin.readline().strip()
            xb = map(int, xb.split())
            xb = list(xb)
            xb = sorted(xb)
            sum_xbm = sum(xb[0:b])
            
            re_list = v[a:].extend(xb[b:])
            re = X - (sum_vn+sum_xbm)
            if re < 0:
                print -1
                break
            else:
                for x in re_list:
                    re = re - x
                    if re<0:
                        print re+x
                    elif re=0:
                        print 0                
                    
        else: print -1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值