其他分享
首页 > 其他分享> > D Campaign 这是一个问题

D Campaign 这是一个问题

作者:互联网

D Campaign

D
这是一个没有解决的问题
在这里插入图片描述

在这里插入图片描述
不要看这个代码 暂时的思路 只过了50

for _ in range (int(input())):
    n=int(input())
    cn=[]
    sn=[]
    for i in range(7):
        c,s=map(int,input().split())
        cn.append(c)
        sn.append(s)
    # print(cn,sn)
    sn=list(zip(*sorted(zip(cn, sn))))[1]
    cn.sort()
    # print(cn, sn)
    cc=0
    ss=0
    for i in range(7):
        if sum(sn) < n:  # 兵力无法都分布掉
            print(0)
            break
        cc+=cn[i]
        ss=sum(sn[:i+1])
        # print(ss)
        if cc>n and ss>n:
            ss-=sn[i]
            if ss<n:#兵力完全分配 有一个基地没有达到兵力值
                print(0)
            else:#达到兵力值
                print(i)
            break
        elif cc==n and  ss>=n:#恰好完全分配
            print(i+1)
            break



标签:cn,这是,ss,问题,int,range,sn,print,Campaign
来源: https://blog.csdn.net/SRT_HD/article/details/114779045