# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
150091 | お前はもう死んでいる (#200) | Wine Tasting (FXCUP4_wine) | C++17 | 11 ms | 1060 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, m2) == m2)
swap(m1, m2);
if(query(m2, m3) == m3)
swap(m2, m3);
if(query(m1, m2) == m2)
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... |