题解 | #出模拟赛#

出模拟赛

http://www.nowcoder.com/practice/16ea0c94aaa1497cbbe913ee0dab9159

  1. 从牌面上可以得到一个上面(单独上限)
  2. 然后总的牌面又可以得到一个上限。
  3. 这两个上限的最小
#include<bits/stdc++.h>
using namespace std;
//模拟赛
int main(){

    long long E,EM,M,MH,H;
    cin>>E>>EM>>M>>MH>>H;

    //从单独组牌来考虑问题得上届
    long long easy = E+EM;
    long long mid = EM+M+MH;
    long long hard = MH+H;
     //从单独组牌来考虑问题得上届
    long long upper = min(easy,min(mid,hard));

    // 以共同出现得上界和单独出现得上界取最小。
    long long ans = min((E+EM+M+MH+H)/3,upper);



    cout<<ans<<endl;


    return 0;
}
大厂笔试题题解 文章被收录于专栏

主要是公司笔试题得一些总结

全部评论

相关推荐

点赞 评论 收藏
分享
我也曾抱有希望:说的好直白
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务