Submission #499735

#TimeUsernameProblemLanguageResultExecution timeMemory
499735MurotYArranging Shoes (IOI19_shoes)C++14
65 / 100
1081 ms3884 KiB
#include <bits/stdc++.h>
#include "shoes.h"
using namespace std;
long long count_swaps(std::vector<int> s) {

    vector <int> v;
    v=s;
    int n=s.size();
//cout << n << " ";
    if (n/2 == 1){
        if (v[0] < v[1]) return 0;
        else return 1;
    }
    long long ans=0;

    bool ok=1;
    for (int i=0;i<n/2;i++){
        if (v[(n/2)+i]+v[i] == 0 and v[i] < 0);

        else{
            ok=0;
            break;
        }
    }
    if (ok){
        int q=1;
        for (int i=n/2-1;i>=1;i--) ans+=i;
        return ans;
    }
    for (int i=0;i<n;i+=2){
        if (v[i] > 0){
            for (int j=i+1;j<n;j++){
                if (-v[j] == v[i]){
                    for (int j1=j-1;j1>=i;j1--) swap(v[j1], v[j1+1]), ans++;
                    break;
                }

            }

        }
        else {
            for (int j=i+1;j<n;j++){
                if (-v[j] == v[i]){
                    for (int j1=j-1;j1>i;j1--) swap(v[j1], v[j1+1]), ans++;
                    break;
                }

            }
        }
    }

    return  ans;
}

Compilation message (stderr)

shoes.cpp: In function 'long long int count_swaps(std::vector<int>)':
shoes.cpp:26:13: warning: unused variable 'q' [-Wunused-variable]
   26 |         int q=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...