Найти номера счастливых билетов - C#
Формулировка задачи:
Троллейбусный билет имеет шестизначный номер. Билет назовем
"счастливым", если сумма первых трех цифр равна сумме последних трех
цифр. Найти номера всех счастливых билетов, у которых сумма первых
или последних трех цифр, будучи возведенной в какую-либо степень равна
номеру счастливого билета.
Решение задачи: «Найти номера счастливых билетов»
textual
Листинг программы
for (double i = 2.0; i < 28.0; i++)
{
double e = 3;
double ticketNum = Math.Pow(i, e);
while (ticketNum < 1000000.0)
{
var ticketStr = ticketNum.ToString("000000");
if (ticketStr.Substring(0, 3).Select(c => c - 48).Sum() == i && ticketStr.Substring(3).Select(c => c - 48).Sum() == (int)i)
{
Console.WriteLine(ticketStr);
}
e++;
ticketNum = Math.Pow(i, e);
}
}