A1066.AC序列
普及+/提高
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
【题目名称】AC序列
序列(英语:Sequences)在数学中是指被排成一列的对象或事件;这样,每个元素不是在其他元素之前,就是在其他元素之后。元素之间的顺序非常重要,其中常见的就是排成一列的数,即数列。
AC狗星的社会里有一种特殊数列,这种数列每条AC狗都知道,因为在他们的小学阶段就会学,这种序列称为AC序列。
简单来说,对于任意一个序列{a},从中选出尽可能多的数,按照在序列{a}中的相对位置形成新的序列{b},并且序列{b}满足b1<=b2<=b3<=⋯bi<=bi+1<=⋯<=bn,则称{b}序列是一个AC序列。AC序列可能不唯一,但是AC序列的长度唯一。
给定一个序列,序列中有N个个位数,求每个数以该数结尾的AC序列的分数。
分数为这个AC序列中所有数的和。
输入格式
第一行,1 个数 N(1<=N<=10000000)。
第二行,N 个数。
输出格式
输出为一行,共N个数,分别表示以每个数结尾的AC序列分数。
输入输出样例
输入#1
5 1 2 8 7 9
输出#1
1 3 11 10 20
说明/提示
对于第1个数,AC序列为1,分数为1
对于第2个数,AC序列为1,2,分数为3
对于第3个数,AC序列为1,2,8,分数为11
对于第4个数,AC序列为1,2,7,分数为10
对于第5个数,AC序列为1,2,8,9,分数为20
若AC序列不唯一,则选择序列下标字典序较小的那一个。