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 Go (1.6) (judge verdict: Accepted)

package main

import (
	"fmt"
)

func palindromePhilia(s string) int {
	l := len(s)
	m := l >> 1
	var f, b string
	var c int

	if l%2 == 0 {
		// front
		for i := m - 1; i >= 0; i-- {
			f += string(s[i])
		}
		// back
		for i := m; i < l; i++ {
			b += string(s[i])
		}
	} else {
		// front
		for i := m; i >= 0; i-- {
			f += string(s[i])
		}
		// back
		for i := m; i < l; i++ {
			b += string(s[i])
		}
	}

	if f == b {
		return 0
	}

	for i, v := range f {
		if string(v) != string(b[i]) {
			c++
		}
	}
	return c
}

func main() {
	var s string
	fmt.Scan(&s)
	fmt.Println(palindromePhilia(s))
}