Есть ли быстрый способ сделать это?
Я бы рекомендовал использовать Mersenne Twister для генерации однородных случайных величин.Если вы сгенерируете равномерное отклонение u ~ [0,1], то (2 * K) * u - K будет ~ [-K, K].
Полагаю, вы могли бы сделать это с rand :
for (int i = 0; i < M; i++) { v.push_back(rand()%(2*K)-K; }
Но мне нужно знать больше о вашем вопросе. Является ли интервал [-K, K] или (-K, K)? Вы включаете -K и K или нет?