Codeforces Round #546 (Div. 2) D

题解 用数组num[x]记录数x后面可以与其交换的数的数目,当这个数目刚好等于这个数和最后一个数的距离时,肯定有办法能把最后一个数换到x的位置,然后需要注意的是要一直更新最后一个数的位置,它的位置就是n-ans(即数列长度-已经移动的次数)。 #include<bits/stdc++.h> using namespace std; const int maxn=3e5+5; vector<int>
相关文章
相关标签/搜索