fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. #pragma region Macros
  5. #define Faster ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
  6. #define ll long long
  7. #define ld long double
  8. #define pii pair<int, int>
  9. #define pll pair<long long, long long>
  10. #define all(x) x.begin(), x.end()
  11. #define rall(x) x.rbegin(), x.rend()
  12. #define pb push_back
  13. #define ff first
  14. #define ss second
  15. #define endl '\n'
  16. #define yes cout << "YES" << endl
  17. #define no cout << "NO" << endl
  18. #define m1 cout << -1 << endl
  19. #pragma endregion
  20.  
  21. #pragma region Math
  22. const ll MOD = 1e9 + 7;
  23. ll gcd(ll a, ll b) { return __gcd(a, b); }
  24. ll lcm(ll a, ll b) { return (a / gcd(a, b)) * b; }
  25. #pragma endregion
  26.  
  27. void solve() {
  28. int n; cin>>n;
  29. vector<int>a(n), b(n);
  30. for(auto &it:a) cin>>it;
  31. for(auto &it:b) cin>>it;
  32. ll ans=0;
  33.  
  34. for(int i=0;i<n;i++){
  35.  
  36. int j=i;
  37. while(j<n and a[j]>b[i])
  38. j++;
  39.  
  40. if(j==n){
  41. cout<<-1<<endl;
  42. return;
  43. }
  44. for(int z=j; z>i; z--){
  45. swap(a[z],a[z-1]);
  46. ans++;
  47. }
  48. }
  49. cout<<ans<<endl;
  50. }
  51. int main() {
  52. Faster;
  53. int t = 1;
  54. cin >> t;
  55. while (t--) solve();
  56. return 0;
  57. }
Success #stdin #stdout 0s 5332KB
stdin
10
3
1 2 2
1 3 5
3
2 2 1
1 2 3
2
5 1
2 4
6
6 5 4 3 2 1
1 2 3 4 5 6
7
4 7 1 6 2 5 3
1 2 3 4 5 6 7
2
2 1
2 3
4
3 2 2 1
1 2 3 4
4
4 3 2 1
1 3 4 5
5
1 5 4 3 2
2 3 4 5 6
5
10 3 8 6 9
3 6 8 9 10
stdout
0
2
-1
15
12
0
4
4
3
5