Submission #1202236

#TimeUsernameProblemLanguageResultExecution timeMemory
1202236ASGA_RedSeaScales (IOI15_scales)C++20
Compilation error
0 ms0 KiB
/**

                                    * بسم الله الرحمن الرحيم *

                ﴾ رَبِّ اشْرَحْ لِي صَدْرِي * وَيَسِّرْ لِي أَمْرِي * وَاحْلُلْ عُقْدَةً مِّن لِّسَانِي * يَفْقَهُوا قَوْلِي ﴿

*/

/// author : "ASGA"


#pragma GCC optimize("Ofast")
#include<bits/stdc++.h>


using namespace std;
using ll=long long;


void answer(vector<int>w);
int getHeaviest(int a,int b,int c);
int getLightest(int a,int b,int c);
int getMedian(int a,int b,int c);
int getNextLightest(int a,int b,int c,int d);



void init(int T){return;}

void s(auto s,auto e){
    int a=*s,b=*(s+1),c=*(s+2),d=*(s+3);

    vector<int>o;

    int q=getLightest(a,b,c);
    int w=getMedian(a,b,c);

    o.push_back(q);
    o.push_back(w);
    if(q==a)o.push_back(w==b?c:b);
    if(q==b)o.push_back(w==a?c:a);
    if(q==c)o.push_back(w==b?a:b);

    a=o[0],b=o[1],c=o[2];

    int ee=getNextLightest(a,b,c,d);

    if(ee==a){
        int r=getHeaviest(a,b,d);
        if(r==d)o.push_back(d);
        else o.insert(o.begin(),d);
    }
    else{
        int i=(ee==b?1:2);
        o.insert(o.begin()+i,d);
    }

    int i=0;
    while(s!=e)(*s++)=o[i++];
}

void orderCoins(){
    vector<int>a={1,2,3,4,5,6};
    s(a.begin(),a.begin()+4);
    s(a.begin()+2,a.end());
    s(a.begin(),a.begin()+4);

    answer(a);

    return;
}


//signed main(){
//    ios_base::sync_with_stdio(0);cin.tie(0);
//
//
//    ;
//
//
//    return 0;
//}

Compilation message (stderr)

/usr/bin/ld: /tmp/ccdUxaRV.o: in function `orderCoins()':
scales.cpp:(.text+0xd0): undefined reference to `answer(std::vector<int, std::allocator<int> >)'
/usr/bin/ld: /tmp/ccdUxaRV.o: in function `void s<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)':
scales.cpp:(.text._Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_[_Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_]+0x65): undefined reference to `getLightest(int, int, int)'
/usr/bin/ld: scales.cpp:(.text._Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_[_Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_]+0x76): undefined reference to `getMedian(int, int, int)'
/usr/bin/ld: scales.cpp:(.text._Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_[_Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_]+0x131): undefined reference to `getNextLightest(int, int, int, int)'
/usr/bin/ld: scales.cpp:(.text._Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_[_Z1sIN9__gnu_cxx17__normal_iteratorIPiSt6vectorIiSaIiEEEES6_EvT_T0_]+0x2da): undefined reference to `getHeaviest(int, int, int)'
/usr/bin/ld: /tmp/ccUZNq7b.o: in function `main':
grader.c:(.text.startup+0x83): undefined reference to `init'
/usr/bin/ld: grader.c:(.text.startup+0x101): undefined reference to `orderCoins'
collect2: error: ld returned 1 exit status