Я получил этот вопрос сегодня в интервью: напишите функцию, чтобы вычислить общее количество подарков, полученных за любой день в 12-дневной рождественской песне. Я написал простую функцию, используя цикл for () в c # 'ish коде, который работал. Затем интервьюер попросил меня продлить его на любое количество дней. Затем разговор перешел к тому, как оптимизировать цикл. Очевидно, есть крутой математический трюк, который сделает это в пределах вашего целого числа. Кто-нибудь знает, что это такое и как оно называется? Любой язык в порядке, и ссылка на алгоритм будет fabuloso.
Ответы, использующие рекурсию, НЕ являются тем, что я ищу.
РЕДАКТИРОВАТЬ: Ответ за день 2 всего 4 подарка, а не 3, так как у меня будет 2 дерева (1 сегодня, 1 вчера) и 2 куропатки На 12-й день я получу в общей сложности 364. Мне нужна формула, которая позволит мне ввести 12 и получить 364.