zoukankan      html  css  js  c++  java
  • b_wy_出模拟赛(二分)

    尽量多的模拟赛,每场模拟赛需要包含Easy,Medium,Hard 三种难度的题目各一道。求你最多能出多少场模拟赛。

    思路:套路
    ···py
    """
    输入:2 2 1 2 2
    输出:3
    三组分别是
    E + EM + H
    E + MH + H
    EM + M + MH
    """
    def chk(c,E,EM,M,MH,H):
    if E<c: #少了Easy
    need=c-E
    if EM<need: return False
    EM-=need
    if H<c: #少了Hard
    need=c-H
    if MH<need: return False
    MH-=need
    #E、H都足够了
    return True if EM+M+MH>=c else False
    A=list(map(int, input().split()))
    l,r,ans=0,sum(A),0
    while l<=r: #用<=是因为l=r时也有可能合法
    m=(l+r)//2
    if chk(m,A[0],A[1],A[2],A[3],A[4]): l,ans=m+1,m
    else: r=m-1
    print(int(ans))

  • 相关阅读:
    HDU
    HDU
    HDU
    HDU
    POJ
    POJ
    POJ
    hdu-4745 Two Rabbits
    蓝桥杯历年试题 小朋友排队
    蓝桥杯历年试题 矩阵翻硬币
  • 原文地址:https://www.cnblogs.com/wdt1/p/14409813.html
Copyright © 2011-2022 走看看