zoukankan      html  css  js  c++  java
  • 2020牛客多校第七场 B.Mask Allocation 构造

    https://ac.nowcoder.com/acm/contest/5672/B

    题意:

    有两种医院,重症医院和轻症医院;

    现在有n家重症医院和m家轻症医院,n*m个口罩;

    用最少的盒子装(盒子不能拆开)这n*m个口罩,若分配给n家重症医院,每家医院m个口罩,若分配给m家轻症医院,每家医院n个口罩;

    求最少的盒子数,并按字典序从大到小打印每个盒子装的口罩数量。

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    const long long mod =1e9+7;
    typedef long long ll;
    typedef __int128 LL;
    const int inf =0x3f3f3f3f;
    const long long INF =0x3f3f3f3f3f3f3f3f;
    const int MAXN =2e5+5;
    int ans[MAXN];
    int main()
    {
        int t;
        scanf("%d",&t);
        while(t--)
        {
            int n,m;
            scanf("%d%d",&n,&m);
    
            int cnt=0;
            while(n&&m)
            {
                if(n<m)swap(n,m);
                for(int i=1;i<=m;i++)ans[++cnt]=m;
                n-=m;
            }
            printf("%d
    ",cnt);
            for(int i=1;i<=cnt;i++)printf("%d%c",ans[i],i==cnt?'
    ':' ');
    
    
        }
    
        return 0;
    }
    View Code
  • 相关阅读:
    kvm virtio
    GPU 线程块/线程束
    ubuntu source
    React
    分布式系统
    honpeyhonepy
    css是干什么的
    bootstrap中的横的列
    数据安全之 alert logic
    viewset的使用的方法
  • 原文地址:https://www.cnblogs.com/MZRONG/p/13416663.html
Copyright © 2011-2022 走看看