[CQOI2011]动态逆序对
题号:NC19919
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

对于序列A,它的逆序对数定义为满足i < j,且Ai > Aj的数对(i,j)的个数。给1到n的一个排列,按照某种顺序依次删除m个元素,你的任务是在每次删除一个元素之前统计整个序列的逆序对数。

输入描述:

输入第一行包含两个整数n和m,即初始元素的个数和删除的元素个数。
以下n行每行包含一个1到n之间的正整数,即初始排列。
以下m行每行一个正整数,依次为每次删除的元素。

输出描述:

输出包含m行,依次为删除每个元素之前,逆序对的个数。
示例1

输入

复制
5 4
1
5
3
4
2
5
1
4
2

输出

复制
5
2
2
1

备注:

对于100%的数据,