Submission #1311444

#TimeUsernameProblemLanguageResultExecution timeMemory
1311444lizi14Arranging Shoes (IOI19_shoes)C++20
25 / 100
13 ms1960 KiB
#include "shoes.h" #include <cstdio> #include <cassert> #include <bits/stdc++.h> using namespace std; //#include "shoes.h" long long count_swaps(vector<int> s) { long long n=s.size()/2; if(n==1){ if(s[0]<0 && s[1]>0){ return 0; } else return 1; } long long cnt=0; for(int i=0; i<n; i++){ if(!(abs(s[i])==s[i+n] && s[i]<0)){ cnt=1; break; } } if(cnt==0){ return (n*(n-1)/2); } int c[2*n]; fill(c,c+2*n,0); long long ans=0; for(int i=0; i<2*n; i++){ if(c[i]==0){ if(s[i]<0){ //int ans1=-1; long long k=0; for(int j=i+1; j<2*n; j++){ if(c[j]==1)k++; if(s[j]==abs(s[i]) && c[j]==0){ ans+=j-i-1-k; c[j]=1; c[i]=1; break; } } } // else{ // int k=0; // for(int j=i; j<2*n; j++){ // if(c[j]==1)k++; // if(abs(s[j])==s[i] && c[j]==0){ // ans+=j-i+1-k; // c[j]=1; // //c[i]=1; // break; // } // } // } } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...