博客
关于我
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多处理使用队列写入同一个文件
    查看>>
    Python多处理.Process:从局部变量开始
    查看>>
    Python多处理-进程数
    查看>>
    python多个定时器_python单线程实现多个定时器示例
    查看>>
    python处理文本_Python - Tokenization
    查看>>
    Python处理数据方向之OpenCV
    查看>>
    python处理一亿条数据_Python数据分析实战(一)
    查看>>
    Python处理PDF神器:PyMuPDF的安装与使用
    查看>>
    Python处理Excel数据
    查看>>
    Python基础:集合与文件操作
    查看>>
    Python基础:搭建开发环境(1)
    查看>>
    PYTHON基础:如何阅读N个整数,直到#39;
    查看>>
    Python基础:11变量作用域和闭包
    查看>>
    Python基础: with模式和__enter__ 和 __exit__
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法:顺序语句结构
    查看>>
    Python基础语法:理解代码与写代码
    查看>>
    Python基础语法:条件和分支
    查看>>