Обозначим через a%b остаток от деления натурального
Функция F(n), где n — неотрицательное целое число, задана следующими соотношениями:
F(n) = 0, если n = 0;
F(n) = F(n//10) + n%10, если n > 0 и
F(n) = F(n//10), если
Определите количество таких
Для примера найдем значение F(12345):
То есть алгоритм считает сумму всех четных цифр в числе. Поскольку по условию задачи требуется найти числа, сумма четных цифр которых
Также подходит число 2 · 109, так как содержит одну двойку. Всего подходящих чисел:
Ответ: 15 116 545.
Приведём решение Артёма Гридина на языке C#.
using System;
namespace N63065
{
internal class Program
{
static int F(int n)
{
if (n== 0)
return 0;
else if (n % 2 == 0)
return F(n / 10) + n % 10;
else
return F(n / 10);
}
static void Main()
{
var p = Convert.ToInt32(Math.Pow(10, 9));
var cnt = 0;
for (int k = p; k<=2*p; k++)
{
if (F(k) == 2)
cnt++;
}
Console.WriteLine(cnt);
Console.ReadKey();
}
}
}

