Алгоритмы, дискретная математика и пр.'s Journal (original) (raw)

1:35p

Други, помогите.

Как решить такую задачу:

Есть строка (max 200 символов) с большим положительным числом. Сколькими способами можно эту строку разбить на n<=200 положительных чисел, каждое из которых меньше чем 10^m (m<=200)?

Например, если n=3, m=4, а данная строка - "1503175417", то ее можно разбить на числа 7 способами:

1.503.175.417
150.3.175.417
150.31.75.417
150.31.754.17
150.317.5.417
150.317.54.17
150.317.541.7

Подскажите лучшее решение. Если можно, так же ссылочку, где можно почитать про решение задач такого рода. Спасибо :)