CF1268C.K Integers

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

You are given a permutation p1,p2,,pnp_1, p_2, \ldots, p_n .

In one move you can swap two adjacent values.

You want to perform a minimum number of moves, such that in the end there will exist a subsegment 1,2,,k1,2,\ldots, k , in other words in the end there should be an integer ii , 1ink+11 \leq i \leq n-k+1 such that pi=1,pi+1=2,,pi+k1=kp_i = 1, p_{i+1} = 2, \ldots, p_{i+k-1}=k .

Let f(k)f(k) be the minimum number of moves that you need to make a subsegment with values 1,2,,k1,2,\ldots,k appear in the permutation.

You need to find f(1),f(2),,f(n)f(1), f(2), \ldots, f(n) .

输入格式

The first line of input contains one integer nn ( 1n2000001 \leq n \leq 200\,000 ): the number of elements in the permutation.

The next line of input contains nn integers p1,p2,,pnp_1, p_2, \ldots, p_n : given permutation ( 1pin1 \leq p_i \leq n ).

输出格式

Print nn integers, the minimum number of moves that you need to make a subsegment with values 1,2,,k1,2,\ldots,k appear in the permutation, for k=1,2,,nk=1, 2, \ldots, n .

输入输出样例

  • 输入#1

    5
    5 4 3 2 1
    

    输出#1

    0 1 3 6 10 
    
  • 输入#2

    3
    1 2 3
    

    输出#2

    0 0 0 
    
首页