CF396D.On Sum of Number of Inversions in Permutations

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

You are given a permutation pp . Calculate the total number of inversions in all permutations that lexicographically do not exceed the given one.

As this number can be very large, print it modulo 10000000071000000007 (109+7)(10^{9}+7) .

输入格式

The first line contains a single integer nn ( 1<=n<=1061<=n<=10^{6} ) — the length of the permutation. The second line contains nn distinct integers p1,p2,...,pnp_{1},p_{2},...,p_{n} ( 1<=pi<=n1<=p_{i}<=n ).

输出格式

Print a single number — the answer to the problem modulo 10000000071000000007 (109+7)(10^{9}+7) .

输入输出样例

  • 输入#1

    2
    2 1
    

    输出#1

    1
    
  • 输入#2

    3
    2 1 3
    

    输出#2

    2
    

说明/提示

Permutation pp of length nn is the sequence that consists of nn distinct integers, each of them is from 11 to nn .

An inversion of permutation p1,p2,...,pnp_{1},p_{2},...,p_{n} is a pair of indexes (i,j)(i,j) , such that i<j and p_{i}>p_{j} .

Permutation aa do not exceed permutation bb lexicographically, if either a=ba=b or there exists such number ii , for which the following logical condition fulfills: AND (a_{i}<b_{i}) .

首页