какой самый простой способ узнать, совпадают ли хотя бы три из 6 плавающих значений со случайным значением 1-6 (в c #)

#c# #unity3d

#c# #unity-game-engine

Вопрос:

я пытаюсь запрограммировать простую игру в кости для мобильных устройств в unity с c # (она называется 10000, может быть, вы это знаете).

В игре у вас есть 6 кубиков, которые вы получаете, когда бросаете например три раза по 6 600 очков, четыре раза по 3 3000 очков и так далее.

Вот почему я должен проверить, есть ли по крайней мере 3 кубика с одинаковым номером, а с Mathf.Approximately и большим количеством if код был бы действительно уродливым и длинным.

Итак, какой самый простой способ обойти эту проблему?

Комментарии:

1. используйте int вместо

Ответ №1:

 // cubes values
int[] values = new int[6]
{
    3, 4, 3, 6, 1, 3
};

// group values (key => value, value => count key)
var group = values.GroupBy(v => v);

// if there are 3 or more identical cubes
if (group.Any(g => g.Count() >= 3))
{

}