Факториал числа без использования умножения
Опубликовано: 22 Сентября, 2022
Учитывая положительное число N , задача состоит в том, чтобы вычислить факториал N без использования оператора умножения.
Примеры:
Input: N = 5
Output:
120
Explanation:
5*4*3*2*1=120Input: N = 7
Output:
5040
Наблюдение:
A*B=A+A+A+A...B times. This observation can be used as follows: 5!=5*4*3*2*1 =(5+5+5+5)*3*2*1 =(20+20+20)*2*1 =60+60 =120
Подход: проблему можно решить, используя концепцию вложенных циклов. Вместо использования оператора умножения ответ можно вычислить вручную, используя другой цикл. Выполните следующие шаги, чтобы решить проблему:
- Инициализировать переменную и N .
- Перейдите от N-1 к 1 , используя переменную i, и сделайте следующее:
- Инициализируйте переменную sum равным 0 .
- Итерируйте от 0 до i-1, используя переменную j , и добавьте ответ к сумме
- Добавьте сумму к ответу .
- Распечатать ответ .
Ниже приведена реализация вышеуказанного подхода
Временная сложность: O(N 2 )
Вспомогательное пространство: O(1)