Олимпиадный тренинг

Задача . A. Разбиение текста


Вам задана строка s длины n и пара чисел p, q. Вам требуется разбить строку s на строки длины p и q. Например, строку "Hello" при p = 2, q = 3 можно разбить на две строки "Hel" и "lo" или на две строки "He" и "llo".

Заметим, что допускается разбиение строки только на строки длины p или только на строки длины q (смотрите второй тестовый пример).

Входные данные

В первой строке находятся три целых положительных числа n, p, q (1 ≤ p, q ≤ n ≤ 100).

Во второй строке находится строка s, состоящая из строчных и прописных букв латинского алфавита, и цифр.

Выходные данные

Если разбить строку s на строки длины p и q невозможно выведите число "-1".

В противном случае в первой строке выведите целое число k — количество строк в разбиении s.

В следующих k строках выведите строки в разбиении. Каждая строка должна быть длины p или q. Строки нужно вывести в порядке появления в исходной строке s — слева направо.

Если существует несколько решений, разрешается вывести любое из них.


Примеры
Входные данныеВыходные данные
1 5 2 3
Hello
2
He
llo
2 10 9 5
Codeforces
2
Codef
orces
3 6 4 5
Privet
-1
4 8 1 1
abacabac
8
a
b
a
c
a
b
a
c

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя