Problem:


一番下の行の数字は?

次のような数字のパターンを作ることを考えます。

4 8 2 3 1 0 8 3 7 6
 2 0 5 4 1 8 1 0 3
  2 5 9 5 9 9 1 3
   7 4 4 4 8 0 4
    1 8 8 2 8 4
     9 6 0 0 2
      5 6 0 2
       1 6 2
        7 8
         5

このパターンは以下の規則に従っています。

A B
 C

という数字の並びにおいて、C は A + B の 1 の位の数字である。たとえば、

9 5
 4

では、9 + 5 = 14 の 1 の位の数字、すなわち 4 が 9 と 5 の斜め下に並べられます。また、

2 3
 5

では、2 + 3 = 5 の 1 の位の数字、すなわち 5 が 2 と 3 の斜め下に並べられます。

一番上の行の 10 個の整数を読み込んで、一番下の行の 1 個の数を出力するプログラムを作成してください。

Input

入力は複数のデータセットからなります。各データセットとして、一番上の行の 10 個の数字が文字列として１行に与えられます。

データセットの数は 20 を超えません。

Output

データセットごとに、一番下の行の数字を１行に出力します。

Sample Input

4823108376
1234567890
0123456789

Output for the Sample Input

5
6
4



Sample input:
4823108376
1234567890
0123456789


Sample output:
5
6
4

Submission status: Runtime Error

Solution code:
import Control.Applicative
import Data.Char
main = do
  v <- map (map (\x->ord(x) - ord('0'))) . lines  <$> getContents
  mapM_ (putStrLn . show . solve) v

solve::[Int] -> Int
solve v = head $ aux v
  where
    aux ::[Int] -> [Int]
    aux f = if length f == 1 then
              f
            else
              aux (zipWith (\x y->(x+y) `mod` 10) f (tail f))

Submission status: Runtime Error

Solution code:
while True:
    s = input()
    while len(s) != 1:
        _new = []
        for i in range(len(s)-1):
            t = str(int(s[i]) + int(s[i+1]))
            _new.append(t if len(t) == 1 else t[1])
        s = "".join(_new)
    print(s)

Submission status: Runtime Error

Solution code:
import sys
for rec in sys.stdin.readlines():
    while len(d)>1:
        tmp=[]
        for i in range(1,len(d)):
            tmp.append((d[i-1]+d[i])%10)
        d=tmp
    print d[0]

Submission status: Runtime Error

Solution code:
import sys
for s in sys.stdin:
    x=map(int,list(str(s))[:-1])
    while True:
        a=len(x)
        x=[(x[i]+x[i+1])%10 for i in range(a-1)]
        if a==1: break
    print x[0]

Submission status: Runtime Error

Solution code:
while 1:
    numbers = map(int, raw_input())
    dp = [[0] * 10 for _ in xrange(10)]
    dp[0] = numbers
    for i in xrange(9):
        for j in xrange(len(dp[i]) - 1):
            dp[i + 1][j] = (dp[i][j] + dp[i][j + 1]) % 10
    print dp[-1][0]