Петя выписал на доску выражение 1+2+...+1000. Его младший брат Вася в каждом числе вставил между всеми соседними цифрами знак умножения. Например, число 547 превратилось в 5•4•7.
Чему равно значение полученного выражения?
1. Рассмотрим первую сумму девяти всех однознаковых чисел. Для них ничего не поменялось.
1+2+...+9 = 10*9/2 = 45
2. Теперь рассмотрим двузначные числа.
цифры любого числа k вида "n1n2" можно записать в виде выражения
n1 = k/10 (цифра первого разряда - количество десятков в числе, то есть, неполное частное от деления на 10)
n2 = k%10 (цифра второго разряда - количество единиц в числе, то есть, остаток от деления на 10)
После Васиной корректировки вместо их суммы получим выражение вида:
∑(n/10 * n%10) где n пробегает значения от 11 до 99:
(1*1 + 1*2 + ... + 1*9) + (2*1 + 2*2 + ... 2*9) + ... + (9*1 + 9*2 + ... + 9*9)
можем переписать это, вынеся множители за скобки:
1*(1 + 2 + ... + 9) + 2*(1 + 2 + ... 9) + ... + 9*(1 + 2 + ... + 9)
То есть, для каждого нового десятка первый множитель будет увеличиваться на 1, а второй пробегать по всем цифрам от 1 до 9, что можно записать так:
∑n*(1+2+..9) где n пробегает по цифрам старшего разряда от 1 до 9. Выносим (1+2+..9) из суммы и получаем:
∑n*∑k где n=[1..9] и k =[1..9]
но значение такой суммы мы уже нашли в 1 пункте, оно равно 45.
Значит, ∑n*∑k = 45*45 - это сумма произведений цифр для чисел 11..99
Прибавим к этому числу нашу первую сумму - 45
и получим значение для всех чисел от 1 до 99: 45*45 + 45.
3. С трёхзначными аналогично: благодаря Васе, каждое число превратится в запись вида:
(n/100 * n/10 * n%10) // n/100 - разряд сотен, n/10 - разряд десятков и n%10 - разряд единиц
а сумма таких чисел - в
∑(n/100 * n/10 * n%10) где n принимает значения от 111 до 999 // первый десяток содержит ноль, его опускаем.
опять замечаем, что первый множитель n/100 будет пробегать значения от 1 до 9 для каждой сотни.
А в каждой сотне будет считаться сумма произведений цифр всех чисел от 11 до 99.
Но мы уже эту сумму посчитали: это 45².
То есть, выражение суммы произведений цифр всех трёхзначных чисел будет равно
(1+2+...+9) * (45*45) = 45*(45²) = 45³.
Остаётся к этому прибавить значение для всех чисел меньших 100: 45²+45.
Получили:45³+45²+45 =
Выполним следующий подсчет:
Сумма членов арифметической прогрессии
s= 1+2+3+..+9 = 9/2*(1+9) = 45
1*0 + 1*1+1*2+1*3+...+1*9 =1*s=45
2*0 + 2*1+2*2+2*3+...+2*9 =2*s
9*0 + 9*1+9*2+9*3+...+9*9 =9*s
s0 = s*s
1*0*0 + 1*0*1 + 1*0*2 +... +1*0*9 = 0
1*1*0 + 1*1*1 + 1*1*2 +... +1*1*9 = 1*1*s
1*2*0 + 1*2*1 + 1*2*2 +... +1*2*9 = 1*2*s
1*3*0 + 1*3*1 + 1*3*2 +... +1*3*9 = 1*3*s
1*9*0 + 1*9*1 + 1*9*2 +... +1*9*9 = 1*9*s
Тогда сумма чисел первой сотни членов ряда
s1 = 1*s*(1+2+...+9)= 1*s*s
Подсчет для второй сотни
2*0*0 + 2*0*1 + 2*0*2 +...+2*0*9 = 0
2*1*0 + 2*1*1 + 2*1*2 +...+2*1*9 = 2*1*s
2*2*0 + 2*2*1 + 2*2*2 +...+2*2*9 = 2*2*s
2*3*0 + 2*3*1 + 2*3*2 +...+2*3*9 = 2*3*s
Сумма членов второй сотни
s2 = 2*s*(1+2+...+9)= 2*s*s
Аналогично для остальных сотен
s3=3*s*s
...
s9=9*s*s
Вся сумма от 1 до 1000 состввит
s+s*s+1*s*s+2*s*s+...+9*s*s = s + s*s +s*s*s =
45 + 45*45 + 45*45*45 = 45 + 2025+ 91125 = 93195