Anfisa the monkey learns to type. She is yet unfamiliar with the "space" key and can only type in lower-case Latin letters. Having typed for a fairly long line, Anfisa understood that it would be great to divide what she has written into *k* lines not shorter than *a* and not longer than *b*, for the text to resemble human speech more. Help Anfisa.
The first line contains three integers *k*, *a* and *b* (1 ≤ *k* ≤ 200, 1 ≤ *a* ≤ *b* ≤ 200). The second line contains a sequence of lowercase Latin letters — the text typed by Anfisa. It is guaranteed that the given line is not empty and its length does not exceed 200 symbols.
# http://codeforces.com/problemset/problem/44/E
import textwrap
s = str(input())
x = map(int , s.split())
s = list(x)
times = s[0]
minimum = s[1]
maximum = s[2]
sequence = str(input())
len_sequence = len(sequence)
if( (times*maximum ) < len_sequence or (times*minimum) > len_sequence ):
    print('No solution')
else:
    avrage_size = int(len_sequence / times)
    divide_remaining = len_sequence % times
    num_addable = maximum - avrage_size
    if( divide_remaining % num_addable == 0 ):
        len_part2 =  divide_remaining / num_addable
    else:
        len_part2  =  int(divide_remaining / num_addable) + 1
    len_part1 = int(times - len_part2)
    parts1 = sequence[:len_part1]
    parts1 = textwrap.wrap(parts1 , avrage_size)
    for i in parts1:
        print(i)
    parts2 =  sequence[len_part1:]
    parts2 = textwrap.wrap(parts2 , maximum)
    for i in parts2:
        print(i)