#include // #include #define rng(a) a.begin(),a.end() #define rrng(a) a.rbegin(),a.rend() #define INF 2000000000000000000 #define ll long long #define ld long double #define pll pair using namespace std; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b> p >> q >> r >> K; K -= 4; p %= 10, q %= 10, r %= 10; map, ll> mp; mp[{p, q, r}] = 0; ll cnt = 1; while (K > 0) { K -= 1; ll next = (p + q + r) % 10; p = q; q = r; r = next; if (mp.find({p, q, r}) != mp.end()) { break; } mp[{p, q, r}] = cnt; cnt += 1; } if (K == 0) { cout << (p + q + r) % 10 << "\n"; return 0; } ll len = cnt - mp[{p, q, r}]; K %= len; for (ll i = 0; i < K; ++i) { ll next = (p + q + r) % 10; p = q; q = r; r = next; } cout << (p + q + r) % 10 << "\n"; }