This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll count_swaps(vector<int>S){
int n=S.size();
int ans=0;
ll vis[n];
memset(vis, 0, sizeof(vis));
for(ll i=0;i<n;i++){
if(vis[i])continue;
ll curr=S[i];
vis[i]=1;
int cnt=0;
if(curr<0){
for(ll j=i+1;j<n;j++){
if(vis[j])cnt++;
if(!vis[j] and S[j]>0 and curr==-1*S[j]){
vis[j]=1;
ans+=(j-1-i)-cnt;
break;
}
}
}
else{
for(ll j=i+1;j<n;j++){
if(vis[j])cnt++;
if(!vis[j] and S[j]<0 and curr==-1*S[j]){
vis[j]=1;
ans+=(j-i)-cnt;
break;
}
}
}
}
return ans;
}
| # | 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... |