#59. 排名

排名

题目描述

给你一个序列s\red s,你把这个序列的所有不同排列按字典序排列后,求s\red s的排名%m\red {\%m}

输入格式

序列的长度n<300000,m,n\red{n<300000,m ,n}个数,代表序列s\red s

输出格式

排名%m\red {\%m}

样例

输入样例

4 1000
2 1 10 2

输出样例

5

数据范围与提示

所有比给定的排列更小的排列(相对于字典顺序)是:(1,2,2,10\red {1,2,2,10}), (1,2,10,2\red {1,2,10,2}), (1,10,2,2\red {1,10,2,2}) 和 (2,1,2,10\red {2,1,2,10}).

2<=m<=109,1<=Si<=300000\red{2<=m<=10^9,1<=S_i<=300000}