abc150_c
問題文通り
vector <int> v;
for(int i=0;i<n;i++) v.push_back(i+1);
do{
}while(next_mermutation(begin(v), end(v)));
上記テンプレを覚えればとりあえずOK
#include<bits/stdc++.h>
using namespace std;
int n;
int p[9], q[9];
int main(){
cin >> n;
for(int i=0;i<n;i++) cin >> p[i];
for(int i=0;i<n;i++) cin >> q[i];
for(int i=0;i<n;i++) v.push_back(i+1);
int pp = 0, qq = 0;
for(int i=0;i<n;i++){
pp *= 10; pp += p[i];
qq *= 10; qq += q[i];
}
int a = 0, b = 0, i = 0;
do{
int vv = 0;
for(int j=0;j<n;j++){
vv *= 10;
vv += v[j];
}
if(pp == vv) a = i;
if(qq == vv) b = i;
//cout << vv << endl;
i++;
}while(next_permutation(begin(v), end(v)));
// cout << a << " " << b << " " << pp << " " << qq << endl;
cout << abs(a-b) << endl;
}