P12685 [国家集训队] 排队 加强版
题目背景
[P1975](https://www.luogu.com.cn/problem/P1975) 的加强版,两题中仅数据范围不同。
题目描述
排排坐,吃果果,生果甜嗦嗦,大家笑呵呵。你一个,我一个,大的分给你,小的留给我,吃完果果唱支歌,大家乐和和。
红星幼儿园的小朋友们排起了长长地队伍,准备吃果果。不过因为小朋友们的身高有所区别,排成的队伍高低错乱,极不美观。设第 $i$ 个小朋友的身高为 $h_i$。
幼儿园阿姨每次会选出两个小朋友,交换他们的位置,请你帮忙计算出每次交换后,序列的逆序对数。为方便幼儿园阿姨统计,在未进行任何交换操作时,你也应该输出该序列的逆序对数。
输入格式
第一行为一个正整数 $n$,表示小朋友的数量;
第二行包含 $n$ 个由空格分隔的正整数 $h_1,h_2,\dots,h_n$,依次表示初始队列中小朋友的身高;
第三行为一个正整数 $m$,表示交换操作的次数;
以下m行每行包含两个正整数 $a_i,b_i$,表示交换位置 $a_i$ 和 $b_i$ 的小朋友。
输出格式
输出文件共 $m+1$ 行,第 $i$ 行一个正整数表示交换操作 $i$ 结束后,序列的逆序对数。
说明/提示
### 样例说明
未进行任何操作时,$(2,3)$ 为逆序对;
操作一结束后,序列为 $130 \ 140 \ 150$,不存在逆序对;
操作二结束后,序列为 $150 \ 140 \ 130$,$(1,2),(1,3),(2,3)$ 共 $3$ 个逆序对。
### 数据范围
对于所有数据,保证:
- $1\le n\le 2\times10^5$
- $1\le m\le 2\times10^5$
- $1\le h_i\le 10^9$
- $1\le a_i,b_i\le n,a_i\neq b_i$