Submission #890797

#TimeUsernameProblemLanguageResultExecution timeMemory
890797GabrielPimArranging Shoes (IOI19_shoes)C++14
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
#include <vector>
using namespace std;
int n,in,fi,a,co=0;
vector<pair <int,int> > v,v2,v3,v4;
vector<int> s;
void bu(void)
{
    //cout<<in<<" "<<v3[in].second<<"\n";
    for(int i=v3[in].second;i>in;i--)
    {
        swap(s[i],s[i-1]);
        co++;
        v3[v4[i].second].second++;
    }
    v3[in].second=0;
    return;
}
bool c(const pair<int, int>& a, const pair<int, int>& b)
{
    if (a.first < b.first) return true;
    else if (a.first > b.first) return false;
    else return a.second < b.second;
}
bool c2(const pair<int, int>& a, const pair<int, int>& b)
{
    if (a.first > b.first) return true;
    else if (a.first < b.first) return false;
    else return a.second < b.second;
}
int main()
{
    cin>>n;
    int t;
    for(int i=0;i<n*2;i++)
    {
        cin>>a;
        s.push_back(a);
        if(s[i]>0) v.push_back(make_pair(s[i],i));
        else v2.push_back(make_pair(s[i],i));
    }
    sort(v.begin(),v.end(),c2);
    sort(v2.begin(),v2.end(),c);
    t=v.size();
    for(int i=0;i<t;i++)
    {
        v3.push_back(v2[i]);
        v3.push_back(v[i]);
    }
    t=v3.size();
    for(int i=0;i<t;i++)
    {
        v4.push_back(make_pair(v3[i].second,i));
    }
    sort(v4.begin(),v4.end());
    for(in=0;in<n*2;in++)
    {
        if(s[in]!=v3[in].first) break;
    }
    for(fi=s.size()-1;fi>=in;fi--)
    {
        if(s[fi]!=v3[fi].first) break;
    }
    for(in=in;in<=fi;in++)
    {
        bu();
    }
    cout<<co;
    return 0;
}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccaFGbsj.o: in function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccfJ0eSh.o:shoes.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/ccaFGbsj.o: in function `main':
grader.cpp:(.text.startup+0x29d): undefined reference to `count_swaps(std::vector<int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status