Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- #define int int64_t
- using namespace std;
- string update (string s)
- {
- if (s == "1")
- return "11";
- int l = 1;
- bool b = 0;
- string s1;
- for (int i = 1; i < s.size(); i++)
- {
- if (s [i] == s [i - 1])
- {
- if (b == 0)
- {
- b = 1;
- l++;
- }
- else
- l++;
- }
- else
- {
- s1 += to_string(l);
- s1 += s [i - 1];
- l = 1;
- }
- }
- s1 += to_string(l);
- s1 += s.back();
- return s1;
- }
- string fix(string s, int m)
- {
- if (m >= s.size())
- return s;
- else
- return s.substr(s.size() - m, s.size());
- }
- int32_t main()
- {
- int n, m, k = 1;
- cin >> n >> m;
- string s = "1";
- while (k < n && s.size() <= m)
- {
- s = update(s);
- k++;
- }
- while (k % 4 != n % 4)
- {
- s = update(s);
- k++;
- }
- cout << fix(s, m);
- }
Advertisement
Add Comment
Please, Sign In to add comment