Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Перенумеруем мудрецов и шляпы от 0 до 99. Каждый мудрец считает сумму своего номера и номеров видимых ему шляп, берёт по модулю 100 и называет это число. Для произвольного количества мудрецов решение аналогично.Мудрецы с номерами от 0 до 98 имеют шляпу с цветом под номером 0, мудрец под номером 99 имеет шляпу с цветом под номером 1.
foreach (var x in data)
foreach (var y in data)
foreach (var z in data)
foreach (var w in data)
{
if ((0 + y + z + w) % 4 == x) continue;
if ((x + 1 + z + w) % 4 == y) continue;
if ((x + y + 2 + w) % 4 == z) continue;
if ((x + y + z + 3) % 4 == w) continue;
Console.WriteLine("fail");
return;
}Мудрец оказывается прав тогда и только тогда, когда его номер совпадает с остатком от деления суммы номеров шляп на 100
Пятничная головоломка