# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1126808 | BlancaHM | Scales (IOI15_scales) | C++17 | 0 ms | 0 KiB |
#include "scales.h"
#include <vector>
#include <algorithm>
using namespace std;
void init(int T) {
return;
}
// Encuentra la mas ligera de las monedas dadas
int encontrarMasLigera(vector<int> & monedas) {
// Primero, nos guardamos todos los numeros que no aparecen para usarlos en
// preguntas. Sabemos que son mas pesados que los que quedan.
vector<int> extras;
for (int i = 1; i <= 6; i++) {
if (find(monedas.begin(), monedas.end(), i) == monedas.end()) {
extras.push_back(i);
}
}
// Encontramos la mas ligera de las primeras 3 monedas.
int monedasPregunta[3];
for (size_t i = 0; i < 3; i++) {
if (i < monedas.size()) {
monedasPregunta[i] = monedas[i];
} else {
monedasPregunta[i] = extras[i - monedas.size()];
}
}