112 const unsigned int end,
113 const unsigned int n_intervals)
117 const unsigned int n_elements = end - begin;
118 const unsigned int n_elements_per_interval = n_elements / n_intervals;
119 const unsigned int residual = n_elements % n_intervals;
121 std::vector<std::pair<unsigned int, unsigned int>> return_values(
124 return_values[0].first = begin;
125 for (
unsigned int i = 0; i < n_intervals; ++i)
127 if (i != n_intervals - 1)
129 return_values[i].second =
130 (return_values[i].first + n_elements_per_interval);
136 ++return_values[i].second;
137 return_values[i + 1].first = return_values[i].second;
140 return_values[i].second = end;
142 return return_values;