AT_past202309_d.相対評価のスコア

通过率:0%

AC君温馨提醒

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

题目描述

你举办了一场程序设计比赛。一共有 NN 名参赛者,第 ii 名参赛者得分为 AiA_i 分。

为了使所有人的分数都变成 00 到 10910^9 范围内的整数(包含 00 和 10910^9),你打算对每一位参赛者 i=1,2,…,Ni=1,2,\ldots,N 按照如下公式计算其“相对分数”:

  • round⁡(109×Aimax⁡iAi)\operatorname{round}\left(10^9\times\dfrac{A_i}{\max_i A_i}\right)

其中,max⁡iAi\max_i A_i 表示所有 AiA_i 中的最大值,round⁡(x)\operatorname{round}(x) 表示四舍五入取整到最近的整数。更正式地,max⁡iAi\max_i A_i 为满足对所有 j(1≤j≤N)j(1\leq j\leq N) 有 Aj≤AiA_j\leq A_i 的 AiA_i,而 round⁡(x)\operatorname{round}(x) 为唯一满足 n−12≤x<n+12n-\dfrac{1}{2}\leq x < n+\dfrac{1}{2} 的整数 nn。

请计算第 ii 名参赛者的相对分数(i=1,2,…,Ni=1,2,\ldots,N)。

输入格式

输入从标准输入读入,格式如下:

NN A1A_1 A2A_2 …\ldots ANA_N

输出格式

请按照 ii 从小到大的顺序,在一行内用空格隔开输出每位选手的相对分数。

输入输出样例

  • 输入#1

    3
    200 600 300

    输出#1

    333333333 1000000000 500000000
  • 输入#2

    2
    1 999999999

    输出#2

    1 1000000000
  • 输入#3

    10
    55580908 183811851 247188750 266233976 335843599 344138315 389659771 389921297 698238479 720357617

    输出#3

    77157382 255167498 343147270 369585841 466217877 477732597 540925454 541288504 969294226 1000000000

说明/提示

样例解释 1

每位参赛者的相对分数计算如下:

max⁡iAi=A2=600\max_i A_i = A_2 = 600,因为 A1≤A2,A2≤A2,A3≤A2A_1 \leq A_2, A_2 \leq A_2, A_3 \leq A_2。

  • 第 11 名参赛者得分为 A1=200A_1=200。109×200600=109310^9\times\dfrac{200}{600}=\dfrac{10^9}{3},而 333333333−12≤1093<333333333+12333333333-\dfrac{1}{2}\leq\dfrac{10^9}{3}<333333333+\dfrac{1}{2},所以相对分数为 333333333333333333。
  • 第 22 名参赛者得分为 A2=600A_2=600。109×600600=10910^9\times\dfrac{600}{600}=10^9,且 1000000000−12≤109<1000000000+121000000000-\dfrac{1}{2}\leq10^9<1000000000+\dfrac{1}{2},所以相对分数为 10000000001000000000。
  • 第 33 名参赛者得分为 A3=300A_3=300。109×300600=5×10810^9\times\dfrac{300}{600}=5\times10^8,而 500000000−12≤5×108<500000000+12500000000-\dfrac{1}{2}\leq5\times10^8<500000000+\dfrac{1}{2},所以相对分数为 500000000500000000。

数据范围

  • 1≤N≤1051\leq N\leq10^5
  • 1≤Ai≤1091\leq A_i\leq10^9 (1≤i≤N1\leq i\leq N)
  • 所有输入均为整数。

由 ChatGPT 5 翻译

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

首页