Изменения

Перейти к: навигация, поиск
Вычитание
Алгоритм не требует дополнительной памяти.
'''function''' getDifference(a: '''vector<int>''', b: '''vector<int>'''): '''vector<int>''' carry = 0 i = 0 '''while''' i < b.size() || carry '''if''' i < b.size() a[i] -= carry + b[i] '''else''' a[i] -= carry carry = a[i] < 0 '''if''' carry a[i] += base i++ '''while''' a.size() > 1 && a.back() == 0 a.pop_back() <font color=green>//Здесь мы после выполнения вычитания удаляем лидирующие нули, чтобы поддерживать предикат о том, что таковые отсутствуют.</font> '''return''' a
=== Умножение длинного на короткое ===
344
правки

Навигация