Давай попробуем рассуждать логически. Если бы сад состоял из двух деревьев, то было бы два варианта садов: 100+99 и 100+101. Если бы досадили третье дерево, то каждый из предыдущих садов удвоил бы число вариантов: первый 100+99+98 и 100+99+100, и так же второй 100+101+100 и 100+101+102. Подмечаем закономерность: каждое добавляемое дерево удваивает количество вариантов. А сад из одного дерева имеет лишь один вариант.
Var count, i, d1, d2, d3, d4, d5, d6: integer; const MIN = 189980; MAX = 205505; begin count := 0; for i := MIN to MAX do begin d1 := i div 100000; d2 := i mod 100000 div 10000; d3 := i mod 10000 div 1000; d4 := i mod 1000 div 100; d5 := i mod 100 div 10; d6 := i mod 10; if ( (d6 * 100000) + (d5 * 10000) + (d4 * 1000) + (d3 * 100) + (d2 * 10) + d1 ) = i then count := count + 1; end; writeln('в промежутке от ', MIN, ' до ', MAX, ' ', count, ' счастливых билетов'); end.
Если бы сад состоял из двух деревьев, то было бы два варианта садов: 100+99 и 100+101. Если бы досадили третье дерево, то каждый из предыдущих садов удвоил бы число вариантов: первый 100+99+98 и 100+99+100, и так же второй 100+101+100 и 100+101+102. Подмечаем закономерность: каждое добавляемое дерево удваивает количество вариантов. А сад из одного дерева имеет лишь один вариант.
Поэтому ответ: 1 * 2 * 2 * 2 * ... (десять двоек умножаются) = 2^10 = 1024 варианта садов.
Думаю что так, если не напутал. Но ты лучше проверь за мной.