Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<bits/stdc++.h>using namespace std;int T,N,M,ans,B[20170],bn;map<int , int> mp;int reverse_pairs(int x){int rt=0,i,j,k,l,u[9];for(i=0;x>0;i++){u[i]=x%10;for(j=i-1;j>=0;j--)if(u[j]<u[i])rt++;x/=10;}return rt;}int move(int x,int y){int rt=0,i,j,k,l,a,b,c,d,e;for(i=1;x>i*10;i*=10){a=(x/i)%(100);b=x%i+x/(i*100)*i;k=1;while(b*10>=k){c=b%k+a*k+b/k*k*100;if(mp.find(c)==mp.end()){B[bn++]=c;mp[c]=y+1;if(c==M)ans=y+1;}k*=10;}}