AT_cpsco2019_s3_g.Grand Election

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在偶像团体 ATC48 中,举行了一次人气投票,共有 NN 位偶像参与,其中每位偶像分别获得了 a1,a2,…,aNa_1, a_2, \ldots, a_N 票。

现在我们需要根据投票结果为每位偶像分配相应的奖金。已有 XX 元(XX 为正整数)奖金准备好,希望根据 aia_i 的比例将其分配给每一位偶像。然而,由于计算特性,X×aiAX \times \frac{a_i}{A}(其中 A=a1+a2+…+aNA = a_1 + a_2 + \ldots + a_N)不一定是一个整数。因此,我们希望分配的奖金金额 x1,x2,…,xNx_1, x_2, \ldots, x_N 满足以下条件:

  1. x1+x2+…+xN=Xx_1 + x_2 + \ldots + x_N = X
  2. ∣x1a1−XA∣+∣x2a2−XA∣+…+∣xNaN−XA∣|\frac{x_1}{a_1} - \frac{X}{A}| + |\frac{x_2}{a_2} - \frac{X}{A}| + \ldots + |\frac{x_N}{a_N} - \frac{X}{A}| 之和尽可能小。

请编写程序计算并输出每个偶像得到的奖金 x1,x2,…,xNx_1, x_2, \ldots, x_N。在可能存在多种分配方案的情况下,选择字典序最小的方案。

输入格式

从标准输入按以下格式读取数据:

NN XX a1a_1 a2a_2 …\ldots aNa_N

输出格式

逐行输出每位偶像获得的奖金金额 x1,x2,…,xNx_1, x_2, \ldots, x_N。

输入输出样例

  • 输入#1

    4 100
    3 4 5 8

    输出#1

    15
    20
    25
    40
  • 输入#2

    2 100
    3 4

    输出#2

    43
    57
  • 输入#3

    6 1000
    7 6 1 3 4 1

    输出#3

    318
    273
    45
    136
    182
    46

说明/提示

  • 1≤N≤1051 \le N \le 10^5
  • 1≤X≤1091 \le X \le 10^9
  • 1≤ai≤1001 \le a_i \le 100
  • 所有输入都是整数。

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页