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 Rust (1.15.1) (judge verdict: Accepted)

use std::io;

fn main() {
    let line = parse_line::<String>();
    println!("{}", solve(line));
}

fn parse_line<T: std::str::FromStr>() -> T {
    let mut s = String::new();
    io::stdin().read_line(&mut s).ok();
    s.trim().parse().ok().unwrap()
}

fn solve(s: String) -> i32 {
    let cs = s.chars();
    let cs_list = cs.collect::<Vec<char>>();
    let mut counter = 0;
    for i in 0..cs_list.len() / 2 {
        if cs_list[i] != cs_list[cs_list.len() - i - 1] {
            counter += 1;
        }
    }
    counter
}