5889 - 数字游戏

题目描述

小Z的班里总共有 n 个学生,编号为 1,2, \dots n

这天,班主任拿了一叠卡片,每张卡片上写了一个数。然后她把卡片分发给了班级里的这 n 个学生。每个同学都非常好奇其他同学手上的号码。

对于第 i 个同学来说,他想知道卡片上数字比他大的同学有几个。这时小Z提了一个数学问题,他说计算出这些人的卡片上数值之和是多少。

请你帮小Z完成计算。

输入

输入的第一行,是一个整数 n

第二行,输入 n 个整数,表示这 n 个同学手上的数。

输出

输出一行,有 n 个结果,对于第 i 行,表示第 i 个同学的结果,即比第 i 个同学卡片上数字大的所有数值之和。

样例

输入

5
1 4 1 4 2

输出

10 0 10 0 8
说明

【样例解释】

a_i 表示第 i 个同学卡片上的数:

  • i=1 时,a_1=1 ,比 1 大的数有 {2,4,4} ,结果为 10;
  • i=2 时,a_2=4 ,比 4 大的数不存在,结果为 0 ;
  • i=3 时,a_3=1 ,比 1 大的数有 {2,4,4} ,结果为 10;
  • i=4 时,a_4=4 ,比 1 大的数有不存在,结果为 0;
  • i=5 时,a_5=2 ,比 2 大的数有 {4,4},结果为 8;

【数据范围】

a_i 表示第 i 个同学卡片上的数:

30 \% 的数据,1 \le n \le 1000 , 1 \le a_i \le 1000;

100 \% 的数据,1 \le n \le 200000 , 1 \le a_i \le 1000000 ;

来源

2025年11月婺城区第三届青少年信息素养大赛小学组试题

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 1
通过人数 1
金币数量 0 枚
难度 入门


上一题 下一题