#include "firstlevelgreedy.h" Split firstLevelGreedy(std::size_t n, CoresList const& coresList) { Split split; auto firstLevelPar = n; split.insert(0); for(auto const& k: coresList) { std::size_t start{}; std::size_t const step = (firstLevelPar + k-1)/k; std::size_t const rk = (firstLevelPar + step-1)/step; for(unsigned int i = 0; i < rk; ++i, start += step) split.insert(start * (n/firstLevelPar)); } return split; }