제출 #1367070

#제출 시각아이디문제언어결과실행 시간메모리
1367070po_rag526저울 (IOI15_scales)C++20
45.45 / 100
1 ms344 KiB
#include"bits/stdc++.h"
#include"scales.h"
using namespace std;
// #define int long long
#define S second
#define F first
void init(int t){}
vector<int>rec(vector<int>a){
	int n=a.size();
	if(n==3){
		auto x=getLightest(a[0],a[1],a[2]);
		auto y=getMedian(a[0],a[1],a[2]);
		return {x,y,a[0]+a[1]+a[2]-x-y};
	};
	int mn=getLightest(a[0],a[1],a[2]);
	vector<int>b,res;
	for(int i=3;i<n;i+=2){
		if(i+1<n)mn=getLightest(mn,a[i],a[i+1]);
		else if(mn==a[0])mn=getLightest(mn,a[i],a[1]);
		else mn=getLightest(mn,a[i],a[0]);
	}
	res.push_back(mn);
	for(int i=0;i<n;i++)if(a[i]!=mn)b.push_back(a[i]);
	auto v=rec(b);
	for(int i:v)res.push_back(i);
	return res;
}
void orderCoins(){
	int w[6];
	auto a=rec({1,2,3,4,5,6});
	for(int i=0;i<6;i++)w[i]=a[i];;
	answer(w);
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…