Все задачи
Средне Решено: 0 Процент решений: 0%

Largest Adjacent-Digit Product

Take every contiguous window of span digits and multiply its digits.

Условие

Take every contiguous window of span digits and multiply its digits. Return the largest product. Leading zeros are ordinary digits; a window containing zero has product zero. Do not reorder or skip digits.

Implement largest_adjacent_digit_product(digits, span).

Input

digits: The digit sequence, including any leading zeros.

span: The exact number of adjacent digits in a window.

Output

Return the greatest product over all windows of this width.

Ограничения

1 ≤ digit-string length ≤ 100,000. Characters are 0…9. 1 ≤ span ≤ min(18, length). All products fit signed 64-bit.

Примеры

Пример 1
Ввод:
span = 2
digits = "23405"

Ожидаемый вывод:
expected = 12
Ввод:
long long span = 2;
std::string digits = "23405";

Ожидаемый вывод:
long long expected = 12;
Ввод:
long span = 2;
string digits = "23405";

Ожидаемый вывод:
long expected = 12;

Пояснение

The windows 23, 34, 40, and 05 have products 6, 12, 0, and 0. The largest is 12.

Пример 2
Ввод:
span = 3
digits = "102"

Ожидаемый вывод:
expected = 0
Ввод:
long long span = 3;
std::string digits = "102";

Ожидаемый вывод:
long long expected = 0;
Ввод:
long span = 3;
string digits = "102";

Ожидаемый вывод:
long expected = 0;

Пояснение

There is only one width-three window. It contains zero, so 1 × 0 × 2 = 0.

Ссылки

Это задание адаптировано для CodeUtility. Следуйте условию и ограничениям выше.

Учитесь у других

Решения сообщества

Пока нет опубликованных решений. Решите задание, чтобы поделиться первым.