Problem:
Score : 300 points

Problem Statement

There are N slimes lining up from left to right. The colors of these slimes will be given as a string S of length N consisting of lowercase English letters. The i-th slime from the left has the color that corresponds to the i-th character of S.

Adjacent slimes with the same color will fuse into one larger slime without changing the color. If there were a slime adjacent to this group of slimes before fusion, that slime is now adjacent to the new larger slime.

Ultimately, how many slimes will be there?

Constraints

1 \leq N \leq 10^5

|S| = N

S consists of lowercase English letters.

Input

Input is given from Standard Input in the following format:

N
S

Output

Print the final number of slimes.

Sample Input 1

10
aabbbbaaca

Sample Output 1

5

Ultimately, these slimes will fuse into abaca.

Sample Input 2

5
aaaaa

Sample Output 2

1

All the slimes will fuse into one.

Sample Input 3

20
xxzaffeeeeddfkkkkllq

Sample Output 3

10

Solution in Java7 (OpenJDK 1.7.0) (judge verdict: Wrong Answer)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
      int N;
      String S;
      Scanner sc = new Scanner(System.in);
      N = sc.nextInt(); //入力文字数
      S = sc.next(); //入力文字列
      
      System.out.println(N);
      System.out.println(S);
      
      String[] stringArray;   //String型の配列stringArrayを宣言
      stringArray = new String[N];  //N個のstring型データを持つ配列stringArrayを生成
      
//        System.out.println("===========================================");

      //(1)初期値i=0、iがN以下の間forループ内を実行 配列に数値を入れる
      for(int i = 0; i < N; i++) {
        stringArray[i] =  S.substring(i,i+1); //i番目からi+1番目の前まで(つまりi番目を入れること)
//        System.out.println("|"+stringArray[i]+"|");
      }
//        System.out.println("===========================================");
      
      int counter=0; //切れ目の数
      String x; //ひとつ前の文字
      x=" ";
      
      //(1)初期値i=0、iがN以下の間forループ内を実行
      for(int i = 0; i < N; i++) {
//          System.out.println("iは" + i + "です。");
        if( stringArray[i].equals(x) ) {
//          System.out.println("ひとしい");
        } else {
          counter = counter+1 ;
          x = stringArray[i];
//          System.out.println("xは" + x + "です。");
//          System.out.println(counter);
//          System.out.println(stringArray[i]);
        }
      }

      System.out.println(counter);

    }
}//mainの終わり