제출 #1273618

#제출 시각아이디문제언어결과실행 시간메모리
1273618Aviansh저울 (IOI15_scales)C++17
34.05 / 100
1 ms356 KiB
#include "scales.h"
#include <bits/stdc++.h>

using namespace std;

void init(int T) {
    /* ... */
}

void orderCoins() {
    vector<int>arr;
    set<int>s;
    s.insert(6);
    s.insert(1);
    s.insert(2);
    s.insert(3);
    s.insert(4);
    s.insert(5);
    arr.push_back(getLightest(3,1,2));
    arr.push_back(getHeaviest(3,1,2));
    s.erase(arr[0]);
    s.erase(arr[1]);
    arr.insert(arr.begin()+1,*(s.begin()));
    s.erase(s.begin());
    while(s.size()){
        int curr = (*s.begin());
            int ind = arr.size()-1;
        while(1){
            if(ind==0){
                arr.insert(arr.begin(),curr);
                break;
            }
            int med = getMedian(arr[ind],arr[ind-1],curr);
            if(med==curr){
                //found
                arr.insert(arr.begin()+ind,curr);
                break;
            }
            else if(med==arr[ind]){
                arr.push_back(curr);
                break;
            }
            else{
                ind--;
            }
        }
        s.erase(curr);
    }
    int ans[6];
    for(int i = 0;i<6;i++){
        ans[i]=arr[i];
    }
    answer(ans);
}
#Verdict Execution timeMemoryGrader output
Fetching results...