| # | Time | Username | Problem | Language | Result | Execution time | Memory | 
|---|---|---|---|---|---|---|---|
| 150017 | お前はもう死んでいる (#200) | 포도주 시음 (FXCUP4_wine) | C++17 | 10 ms | 980 KiB | 
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "bartender.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> A;
std::vector<int> BlendWines(int K, std::vector<int> R){
	A.resize(R.size());
	for(int i = 0; i < (int)R.size(); i++){
		R[i]--;
		A[i] = R[i] % 10 + 1;
	}
	return A;
}
#include "taster.h"
#include <bits/stdc++.h>
using namespace std;
vector<int> loc[11];
vector<int> T;
vector<int> R;
int query(int a, int b){
	if(a >= (int)T.size() && b >= (int)T.size())
		return min(a, b);
	
	if(a >= (int)T.size())
		return b;
	
	if(b >= (int)T.size())
		return a;
	int r = Compare(a, b);
	if(r == 1) return b;
	return a;
}
int mn, md, mx;
int m1, m2, m3;
vector<int> SortWines(int K, std::vector<int> A) {
	T = A;
	for(int i = 0; i < (int)A.size(); i++){
		loc[A[i]].push_back(i);
	}
	for(int i = A.size(); i < 30; i++){
		loc[i % 10 + 1].push_back(i);
	}
	R.resize(30);
	mx = loc[1][0];
	md = loc[1][1];
	mn = loc[1][2];
	if(query(mn, md) == md)
		swap(mn, md);
	if(query(mx, md) == mx)
		swap(mx, md);
	if(query(mn, md) == md)
		swap(mn, md);
	R[mn] = 1;
	R[md] = 11;
	R[mx] = 21;
	for(int i = 2; i <= 10; i++){
		m1 = loc[i][0];
		m2 = loc[i][1];
		m3 = loc[i][2];
		if(query(m1, md) == md)
			swap(m1, m2);
		if(query(m2, mx) == mx)
			swap(m2, m3);
		if(query(m1, md) == md)
			swap(m1, m2);
		R[m1] = i;
		R[m2] = i + 10;
		R[m3] = i + 20;
	}
	
	R.resize(A.size());
	return R;
}
| # | Verdict | Execution time | Memory | Grader output | 
|---|---|---|---|---|
| Fetching results... | ||||
