ABC T3 QT
  • 板块灌水区
  • 楼主CNMIOS
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/4/20 22:30
  • 上次更新2024/4/21 09:27:04
查看原帖
ABC T3 QT
1070915
CNMIOS楼主2024/4/20 22:30
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
int n;
int a[200050];
int is[200050][3];
int main(){
    cin >> n;
    for(int i=1;i<=n;i++){
        cin >> a[i];
    }
    int pos=0;
    for(int i=1;i<=n;i++){
        while(a[i]!=i){
            pos++;
            is[pos][1]=min(a[i],i);
            is[pos][2]=max(a[i],i);
            swap(a[i],a[a[i]]);
        }
        
    }
    cout << pos << '\n';
    for(int i=1;i<=pos;i++){ 
        cout << is[i][1] << ' ' << is[i][2] << '\n';
    }
    return 0;
}
2024/4/20 22:30
加载中...