Submission #1156095

#TimeUsernameProblemLanguageResultExecution timeMemory
1156095aarb_.tomatexdScales (IOI15_scales)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
#include "scales.h"
using namespace std;

void init(int t) {}

// Implementación eficiente de orderCoins()
void orderCoins() {
    int W = {0,0,0,0,0,0}; // Arreglo donde almacenaremos el orden final
    
    // 1. Encontrar la moneda más ligera y la más pesada en solo dos llamadas
    int L = getLightest(1, 2, 3); // La más ligera entre {1, 2, 3}
    int H = getHeaviest(4, 5, 6); // La más pesada entre {4, 5, 6}

    // 2. Determinar una moneda intermedia
    int M = getMedian(L, H, 3); // Encuentra una moneda intermedia

    // 3. Ordenar las tres monedas restantes de menor a mayor
    vector<int> remaining;
    for (int i = 1; i <= 6; i++) {
        if (i != L && i != H && i != M) remaining.push_back(i);
    }

    // 4. Encontrar la segunda moneda más ligera
    int L2 = getNextLightest(remaining[0], remaining[1], remaining[2], L);
    int L3 = getNextLightest(remaining[0], remaining[1], remaining[2], L2);
    int H2 = getNextLightest(remaining[0], remaining[1], remaining[2], L3); // La última será la más pesada de este grupo

    // 5. Asignar los valores encontrados al array final
    W[0] = L;
    W[1] = L2;
    W[2] = L3;
    W[3] = M;
    W[4] = H2;
    W[5] = H;

    // 6. Llamamos a answer con el orden final
    answer(W);
}

Compilation message (stderr)

scales.cpp: In function 'void orderCoins()':
scales.cpp:9:9: error: scalar object 'W' requires one element in initializer
    9 |     int W = {0,0,0,0,0,0}; // Arreglo donde almacenaremos el orden final
      |         ^