Pagini recente » Cod sursa (job #2242239) | Cod sursa (job #2966790) | Cod sursa (job #1422477) | Cod sursa (job #781974) | Cod sursa (job #307180)
Cod sursa(job #307180)
#include <cstdio>
#include <iostream>
using namespace std;
int n, m, i, j, k, sz, l1, l2;
string s, sol1, sol2, c1, c2;
int fib[25];
int main() {
freopen("lampa.in", "r", stdin);
freopen("lampa.out", "w", stdout);
scanf("%d %d ", &n, &m);
cin>>s;
sz = s.size() - 1;
fib[1] = fib[2] = 1;
for (i = 3; i < 25; i++)
fib[i] = fib[i - 1] + fib[i - 2];
sol1 = "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz";
for (i = 1; i * fib[n - 2] <= m; i++) {
l1 = i;
if ((m - fib[n - 2] * l1) % fib[n - 1] == 0) {
l2 = (m - fib[n - 2] * l1) / fib[n - 1];
c1.clear();
c2.clear();
for (j = sz - l2 + 1; j <= sz; j++)
c2 += s[j];
for (j = sz - l2 - l1 + 1; j <= sz - l2; j++)
c1 += s[j];
if (c1 < sol1) {
sol1 = c1;
sol2 = c2;
}
}
}
cout<<sol1<<"\n"<<sol2<<"\n";
return 0;
}