// Extract top K stock IDs
    int* resultIds = (int*)malloc(K * sizeof(int));
    for (int i = K - 1; i >= 0; i--) {
        resultIds[i] = extractMin(minHeap).stockId;
    }

    for (int i = 0; i < K; i++) {
        printf("%d%c", resultIds[i], (i == K - 1) ? '\n' : ' ');
    }

    free(minHeap->arr);
    free(minHeap);
    free(resultIds);

    return 0;