#include <bits/stdc++.h>   using namespace std;   void solve() {     int k, a, b;     cin >> k >> a >> b;     string s;     cin >> s;     int l = s.length();     double c = (double)l / k;     int c1 = floor(c);     int c2 = ceil(c);     int flag1 = 0, flag2 = 0;     if ((l - (c1 * (k - 1))) > b || (l - (c1 * (k - 1))) < a) {       flag1 = 1;     }     if ((l - (c2 * (k - 1))) > b || (l - (c2 * (k - 1))) < a) {       flag2 = 1;     }     if ((flag1 == 1 || c1 < a || c1 > b) && (flag2 == 1 || c2 < a || c2 > b)) {       cout <<  No solution ;       return;     }     if (flag1 == 0) {       int i1 = 0;       int kk = 0;       while (i1 <= l) {         kk++;         for (long long int i = i1; i < min(i1 + c1, l); i++) {           cout << s[i];         }         i1 += c1;         if (kk == k) {           for (long long int i = i1; i < l; i++) {             cout << s[i];           }           return;         }         printf(  n );       }     } else {       int i1 = 0;       int kk = 0;       while (i1 <= l) {         kk++;         for (long long int i = i1; i < min(i1 + c2, l); i++) {           cout << s[i];         }         i1 += c2;         if (kk == k) {           for (long long int i = i1; i < l; i++) {             cout << s[i];           }         }         printf(  n );       }     }   }   int main() { solve(); }   