Problem:
Score : 200 points

Problem Statement

Takahashi loves palindromes. Non-palindromic strings are unacceptable to him. Each time he hugs a string, he can change one of its characters to any character of his choice.

Given is a string S. Find the minimum number of hugs needed to make S palindromic.

Constraints

S is a string consisting of lowercase English letters.

The length of S is between 1 and 100 (inclusive).

Input

Input is given from Standard Input in the following format:

S

Output

Print the minimum number of hugs needed to make S palindromic.

Sample Input 1

redcoder

Sample Output 1

1

For example, we can change the fourth character to o and get a palindrome redooder.

Sample Input 2

vvvvvv

Sample Output 2

0

We might need no hugs at all.

Sample Input 3

abcdabc

Sample Output 3

2

Solution in Scala (2.11.7) (judge verdict: Accepted)

object Main extends scala.App {
    import java.util
    import scala.collection._
    import scala.collection.mutable
    import scala.math._

    val sc = new java.util.Scanner(System.in)
    val S = sc.next()

    val (pre, suf) = if (S.length % 2 == 0) {
        val n = S.length / 2
        (S.substring(0, n), S.substring(n).reverse)
    } else {
        val n = S.length / 2
        (S.substring(0, n), S.substring(n + 1).reverse)
    }

    val ans = (pre zip suf)
            .filter(p => p._1 != p._2)
            .foldLeft(0)((cnt, ch) => cnt + 1)
    println(ans)
}