#include using namespace std; #define ll long long #define rep(i,n) for(int (i)=0;(i)<(n);(i)++) #define Pr pair #define Tp tuple using Graph = vector>; ll mod = 10; //行列累乗 matrix power //modをglobalに定義しておく vector> pw_matrix(vector> &M,ll n){ if(n==1) return M; if(n%2==1){ auto K = pw_matrix(M,n-1); int a = M.size(); vector> L(a,vector(a)); rep(i,a){ rep(j,a){ ll b = 0; rep(k,a) b += (M[i][k]*K[k][j])%mod; L[i][j] = b%mod; } } return L; } if(n%2==0){ auto K = pw_matrix(M,n/2); int a = M.size(); vector> L(a,vector(a)); rep(i,a){ rep(j,a){ ll b = 0; rep(k,a) b += (K[i][k]*K[k][j])%mod; L[i][j] = b%mod; } } return L; } } int main() { ll a[3]; rep(i,3) cin >> a[i]; swap(a[0],a[2]); ll K; cin >> K; //rep(i,3) cout << a[i] << endl; //main関数内 sizeは適宜買える vector> M(3,vector(3,0)); //もとの行列 //行列の成分を代入 rep(i,3) M[0][i] = 1; M[1][0] = 1; M[2][1] = 1; auto S = pw_matrix(M,K-3); ll ans = 0; rep(i,3){ //size変える ans += (S[0][i]*a[i])%mod; ans %= mod; } cout << ans << endl; }