Submission #149448

#TimeUsernameProblemLanguageResultExecution timeMemory
149448mit한의대지망생 (#200)Wine Tasting (FXCUP4_wine)C++17
28 / 100
11 ms932 KiB
#include "bartender.h" using namespace std; vector<int> BlendWines(int K, vector<int> R){ int N = R.size(); vector<int> A(N); for(int i = 0; i < N; i++) A[i] = (R[i]-1) % 16 + 1; return A; }
#include "taster.h" using namespace std; vector<int> g[31]; void get_piv(int v){ if(Compare(g[1][0], g[v][0]) == -1){ if(Compare(g[1][0], g[v][1]) == -1){ if(Compare(g[1][1], g[v][0]) == -1) swap(g[v][0], g[v][1]); }else{ swap(g[1][0], g[1][1]); swap(g[v][0], g[v][1]); } }else{ swap(g[1][0], g[1][1]); } for(int i = 2; i < v; i++){ if(Compare(g[i][1], g[1][1]) == -1){ swap(g[i][0], g[i][1]); } } } vector<int> SortWines(int K, vector<int> A) { int N = A.size(); for(int i = 0; i < N; i++) g[A[i]].push_back(i); int v = 0; for(int i = 14; i >= 1; i--){ if(g[i].size() == 2){ v = i; break; } } vector<int> R(N); if(v > 1) get_piv(v); else if(v == 1){ if(Compare(g[1][0], g[1][1]) == -1) swap(g[1][0], g[1][1]); } else{ return A; } for(int i = 1; i <= 16; i++){ for(int j = 0; j < g[i].size(); j++){ int k = g[i][j]; R[k] = j * 16 + i; } } return R; }

Compilation message (stderr)

taster.cpp: In function 'std::vector<int> SortWines(int, std::vector<int>)':
taster.cpp:41:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int j = 0; j < g[i].size(); j++){
                  ~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...