А вы представьте - вот вы берете бревно, делаете первый распил - получили сколько поленьев? правильно - 2 (а распил-то - один). Т.е. первый распил увеличивает кол-во поленьев на 2.Все остальные распилы этого же бревна увеличивают кол-во поленьев на 1 (1 распил - 1 полено) - было 2, стало 3, было 3, стало 4 и т.д.. Отсюда понятно, что разница между числом распилов и кол-вом поленьев = кол-во исходных брёвен.Не знаю, понятно-ли объясняю Давайте нарисую. Пусть знак '_' - это распил, '*' - первое (крайнее) полено в бревне, '@' - все остальные поленья этого бревна. Тогда:*_@_@_@_@   - первое бревно*_@_@_@_@_@_@  - второе бревно*_@_@           - третье бревно*_@_@_@_@        - четвертое бревно Мы видим, что распил+полено образуют пары (_@), кроме первого (крайнего) полена (*). Это полено даже можно назвать меткой исходных поленьев. Кол-во (*) соответствует кол-во исходных бревен. И если мы из кол-ва поленьев вычтем число распилов, то получится кол-во (*) или исходных брёвен. Что и требовалось подсчитать