Submission #1273622

#TimeUsernameProblemLanguageResultExecution timeMemory
1273622AvianshScales (IOI15_scales)C++17
55.56 / 100
1 ms356 KiB
#include "scales.h" #include <bits/stdc++.h> using namespace std; void init(int T) { /* ... */ } void orderCoins() { vector<int>arr1; set<int>s; s.insert(6); s.insert(1); s.insert(2); s.insert(3); s.insert(4); s.insert(5); arr1.push_back(getLightest(3,1,2)); arr1.push_back(getHeaviest(3,1,2)); s.erase(arr1[0]); s.erase(arr1[1]); arr1.insert(arr1.begin()+1,(*s.begin())); s.erase(s.begin()); vector<int>arr2; arr2.push_back(getLightest(4,5,6)); arr2.push_back(getHeaviest(4,5,6)); s.erase(arr2[0]); s.erase(arr2[1]); arr2.insert(arr2.begin()+1,(*s.begin())); int ind = 0; for(int i = 0;i<3;i++){ while(1){ if(ind==arr1.size()){ arr1.push_back(arr2[i]); ind++; break; } if(ind==arr1.size()-1){ ind--; } int med = getMedian(arr1[ind],arr1[ind+1],arr2[i]); if(med==arr2[i]){ ind++; arr1.insert(arr1.begin()+ind,arr2[i]); } else if(med==arr1[ind]){ arr1.insert(arr1.begin()+ind,arr2[i]); ind++; } else{ ind+=2; continue; } break; } } int ans[6]; for(int i = 0;i<6;i++){ ans[i]=arr1[i]; } answer(ans); }
#Verdict Execution timeMemoryGrader output
Fetching results...