博客
关于我
UPC 2020年秋季组队训练赛第十一场
阅读量:535 次
发布时间:2019-03-08

本文共 962 字,大约阅读时间需要 3 分钟。

根据题目要求,我们需要将给定的奖金按每个问题的数量进行分配。具体来说,我们需要计算每个问题的奖金,然后根据每个团队成员解决的问题数量来分配奖金。

解决方案

  • 读取输入数据:首先读取团队成员的数量 n 和总奖金 d。然后读取每个团队成员解决的问题数量。
  • 计算总问题数:将所有团队成员解决的问题数量求和,得到总问题数 total_problems。
  • 计算每个问题的奖金:用总奖金 d 除以总问题数 total_problems,得到每个问题的奖金 per_problem。
  • 分配奖金:对于每个团队成员,计算他们的奖金,即每个问题的奖金乘以他们解决的问题数量,并输出结果。
  • 代码实现

    #include 
    #include
    using namespace std;int main() { int n, d; cin >> n >> d; vector
    problems(n); for (int i = 0; i < n; ++i) { cin >> problems[i]; } int total_problems = 0; for (int p : problems) { total_problems += p; } int per_problem = d / total_problems; for (int p : problems) { cout << per_problem * p << endl; } return 0;}

    代码解释

    • 读取输入:使用 cin 读取输入数据。首先读取 n 和 d,然后读取 n 个问题数量。
    • 计算总问题数:遍历每个团队成员的问题数量,将它们累加,得到 total_problems。
    • 计算每个问题的奖金:用 d 除以 total_problems,得到每个问题的奖金 per_problem。
    • 分配奖金并输出:遍历每个团队成员,计算他们的奖金并按顺序输出。

    该方法确保了每个问题的奖金能够被整除,并且按照题目要求分配给每个团队成员。代码的时间复杂度为 O(n),能够在给定的约束下高效运行。

    转载地址:http://ncfiz.baihongyu.com/

    你可能感兴趣的文章
    Python+统计学 | 探索常用的数据分析统计分布
    查看>>
    python, selenium中用于切换帧的函数
    查看>>
    python函数
    查看>>
    python----线程、进程、协程的区别及多线程详解
    查看>>
    python---5
    查看>>
    python---使用celery分布式系统异步发送短信(云通讯)来验证登录
    查看>>
    python--003--百分号字符串拼接、format
    查看>>
    Python--10、线程
    查看>>
    Python--Redis实战:第四章:数据安全与性能保障:第4节:复制
    查看>>
    python--基本代码规范
    查看>>
    Python--抽象类接口类
    查看>>
    PYTHON--欧拉习题二
    查看>>
    python--高级应用总结
    查看>>
    python-520表白代码,我看谁说程序员不懂浪漫,送你几套表白代码,一步到位
    查看>>
    Python-Asyncio TypeError:无法在‘;等待‘;表达式中使用对象DICT
    查看>>
    Python-AttributeError:‘;dict&39;对象没有属性‘;序列‘;
    查看>>
    Python-ldap:是否可以在不显式写入密码的情况下进行绑定?
    查看>>
    python出现 unknown encoding: idna 的处理方法
    查看>>
    Python出现 RuntimeError: dictionary changed size during iteration 的解决方法
    查看>>
    Python-numpy(2)数组的操作
    查看>>