if文を使わず合計300の10個の乱数をゲットしたいならこんな感じかな

List<int> Nums = new List<int> ();
var Cou = 0;
for (int i = 0; i < 10; i++) {
Nums.Add (Random.Range (0, 30));
Cou += Nums[Nums.Count - 1];
}
var v = (300 - Cou) / 10;
Cou = 0;
for (int i = 0; i < 10; i++) {
Nums[i] += v;
Cou += Nums[i];
}
Nums[Nums.Count - 1] += (300 - Cou);

//16+34+43+34+39+17+41+23+18+35+ 合計300