#include "shoes.h"
#include <bits/stdc++.h>
using namespace std;
long long count_swaps(vector<int> a) {
int n = a.size()/2;
long long ans = 0;
int tmp = a[0];
bool ch = true;
for(int i=0;i<n;i++)if(a[i] != tmp)ch = false;
for(int i=n;i<n*2;i++)if(a[i] != -tmp)ch = false;
if(ch == true){
ans = (long long)n*(n-1ll)/2ll;
return ans;
}
for(int i=0;i<n;i++){
if(a[i*2]+a[i*2+1] == 0){
if(a[i*2] > 0){
ans ++;
swap(a[i*2], a[i*2+1]);
}
continue;
}
int j;
for(j=i*2+1; j < n*2; j++){
if(a[j] == -a[i*2]){ // found
break;
}
}
if(a[i*2] < 0){
while(j-1 > i*2){
j--;
swap(a[j], a[j+1]);
ans ++ ;
}
}else {
while(j-1 >= i*2){
j--;
swap(a[j], a[j+1]);
ans ++ ;
}
}
}
return ans;
}
/*
3
-2 2 2 -2 -2 2
2
2 1 -1 -2
*/
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Incorrect |
0 ms |
256 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Incorrect |
0 ms |
256 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Incorrect |
0 ms |
256 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Correct |
1 ms |
256 KB |
Output is correct |
3 |
Correct |
0 ms |
256 KB |
Output is correct |
4 |
Correct |
0 ms |
256 KB |
Output is correct |
5 |
Execution timed out |
1091 ms |
1912 KB |
Time limit exceeded |
6 |
Halted |
0 ms |
0 KB |
- |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Incorrect |
0 ms |
256 KB |
Output isn't correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
0 ms |
256 KB |
Output is correct |
2 |
Incorrect |
0 ms |
256 KB |
Output isn't correct |