Submission #895789

#TimeUsernameProblemLanguageResultExecution timeMemory
895789ozner77Arranging Shoes (IOI19_shoes)C++17
0 / 100
0 ms600 KiB
#include "shoes.h" #include <bits/stdc++.h> #include <vector> #include <iostream> #include <string> using namespace std; long long count_swaps(std::vector<int> s) { int a,b,c,d,e=s.size(),xd=-1; bool fua=true; long long swaps=0; a=s[0]; b=s[0]; for(int k=0;k<e;k+=2){ a=s[k]; b=s[k]; for(int i=k;i<e;i++){ if(s[i]<0){ while(true){ xd++; if(s[i+xd]+s[i]==0){ fua=false; break; }else if(i-xd==k){ break; }else if(s[i-xd]+s[i]==0 && i-xd>=k+1){ swaps++; break; } } if(fua){ swaps++; if(s[i]==s[k]){ swaps--; } s[k]=s[i]; s[i]=a; c=s[k+1]; d=s[k+1]; for(int j=k+1;j<e;j++){ if(s[j]+s[k]==0){ s[k+1]=s[j]; s[j]=c; break; }else if(i>=k+2){ swaps++; d=s[j]; s[j]=c; c=d; } } break; } }else if(i>=k+1){ swaps++; b=s[i]; s[i]=a; a=b; } } } return swaps-1; }
#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...