Related Articles
Minimum number of deletions so that no two consecutive are same
• Difficulty Level : Basic
• Last Updated : 28 May, 2018

Given a string, find minimum number of deletions required so that there will be no two consecutive repeating characters in the string.

Examples:

```Input : AAABBB
Output : 4
Explanation : New string should be AB

Input : ABABABAB
Output : 0
Explanation : There are no consecutive repeating characters.
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

If there are n consecutive same characters delete n-1 out of those n characters.

## C++

 `// CPP code to count minimum deletions required``// so that there are no consecutive characters left``#include ``using` `namespace` `std;`` ` `int` `countDeletions(string str)``{``    ``int` `ans = 0;``    ``for` `(``int` `i = 0; i < str.length() - 1; i++) ``        ` `        ``// If two consecutive characters are ``        ``// the same, delete one of them.``        ``if` `(str[i] == str[i + 1]) ``            ``ans++;``         ` `   ``return` `ans;``}`` ` `// Driver code``int` `main()``{``    ``string str = ``"AAABBB"``;`` ` `    ``// Function call to print answer``    ``cout << countDeletions(str);`` ` `    ``return` `0;``}`

## Java

 `// Java code to count minimum deletions required``// so that there are no consecutive characters left``import` `java.util.*;`` ` `class` `GFG``{``  ``static` `int` `countDeletions(String s)``  ``{``    ``int` `ans = ``0``;``    ``char``[] str = s.toCharArray();`` ` `    ``for` `(``int` `i = ``0``; i < str.length - ``1``; i++) ``         ` `        ``// If two consecutive characters are ``        ``// the same, delete one of them.``        ``if` `(str[i] == str[i + ``1``]) ``            ``ans++;            ``       ` `        ``return` `ans;``  ``}`` ` `    ``// Driver code``    ``public` `static` `void` `main(String[] args)``    ``{``      ``String str = ``"AAABBB"``;``      ``// Function call to print answer ``     ``System.out.println(countDeletions(str));``    ``}``}``/* This code is contributed by Mr. Somesh Awasthi */`

## Python

 `# Python code to count minimum deletions required``# so that there are no consecutive characters left\`` ` `def` `countDeletions(string):``    ``ans ``=` `0``    ``for` `i ``in` `range``(``len``(string) ``-` `1``):``         ` `        ``# If two consecutive characters are ``        ``# the same, delete one of them.``        ``if` `(string[i] ``=``=` `string[i ``+` `1``]): ``            ``ans ``+``=` `1``         ` `    ``return` `ans``  ` `# Driver code``string ``=` `"AAABBB"`` ` `# Function call to print answer``print` `countDeletions(string)`` ` `# This code is contributed by Sachin Bisht`

## C#

 `// C# Program to count minimum deletions``// required so that there are no``// consecutive characters left``using` `System;`` ` `class` `GFG``{``     ` `// Function for counting deletions    ``static` `int` `countDeletions(String s)``{``    ``int` `ans = 0;``    ``char` `[]str = s.ToCharArray();`` ` `    ``for` `(``int` `i = 0; i < str.Length - 1; i++) ``         ` `        ``// If two consecutive characters are ``        ``// the same, delete one of them.``        ``if` `(str[i] == str[i + 1]) ``            ``ans++;         ``     ` `        ``return` `ans;``}`` ` `    ``// Driver code``    ``public` `static` `void` `Main()``    ``{``        ``String str = ``"AAABBB"``;``     ` `        ``// Function call to print answer ``        ``Console.Write(countDeletions(str));``    ``}``}`` ` `// This code is contributed by Nitin Mittal.`

## PHP

 ``

Output:
```4
```

This article is contributed by Rohit Thapliyal. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.