#include "shoes.h"
typedef long long ll;
ll count_swaps(std::vector<int> s) {
ll n = s.size();
ll arr[2 * n + 5];
for (ll i = 0; i < 2 * n; i++){
arr[i + 1] = s[i];
}
ll cnt = 0;
for (ll i = 1; i <= 2 * n; i++){
if (i & 1){
if (-arr[i] == arr[i + 1] && arr[i] < 0 && arr[i + 1] > 0){
i++;
continue;
}
else {
//cout << i << endl;
if (arr[i] < 0){ //pembuka
ll near = 0;
for (ll j = i + 1; j <= 2 * n; j++){
if (arr[j] == -arr[i]){
near = j;
break;
}
}
for (ll j = near - 1; j >= i; j--){
ll nt = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = nt;
cnt++;
}
i++;
}
else if (arr[i] > 0){ //penutup
ll near = 0;
for (ll j = i + 1; j <= 2 * n; j++){
if (arr[j] == -arr[i]){
near = j;
break;
}
}
//cout << " nearest : ! " << near << endl;
for (ll j = near - 1; j >= i; j--){
ll nt = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = nt;
cnt++;
}
i++;
}
}
}
}
return cnt;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |