# Count consecutive pairs of same elements

Given an array **arr[]**, the task is to count the number of pairs formed by consecutive elements in which both of the elements in a pair are same.

**Examples:**

Input:arr[] = {1, 2, 2, 3, 4, 4, 5, 5, 5, 5}

Output:5

(1, 2), (4, 5), (6, 7), (7, 8) and (8, 9) are the valid index pairs

where consecutive elements are equal.

Input:arr[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

Output:0

No two consecutive elements in the given array are equal.

**Approach:** Initialize **count = 0** and traverse the array from **arr[0]** to **arr[n – 2]**. If the current element is equal to the next element in the array then increment the **count**. Print the **count** in the end.

Below is the implementation of the above approach:

## C++

`// C++ implementation of the approach ` `#include <iostream> ` `using` `namespace` `std; ` ` ` `// Function to return the count of consecutive ` `// elements in the array which are equal ` `int` `countCon(` `int` `ar[], ` `int` `n) ` `{ ` ` ` `int` `cnt = 0; ` ` ` ` ` `for` `(` `int` `i = 0; i < n - 1; i++) { ` ` ` ` ` `// If consecutive elements are same ` ` ` `if` `(ar[i] == ar[i + 1]) ` ` ` `cnt++; ` ` ` `} ` ` ` `return` `cnt; ` `} ` ` ` `// Driver code ` `int` `main() ` `{ ` ` ` `int` `ar[] = { 1, 2, 2, 3, 4, 4, 5, 5, 5, 5 }; ` ` ` `int` `n = ` `sizeof` `(ar) / ` `sizeof` `(ar[0]); ` ` ` `cout << countCon(ar, n); ` ` ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

## Java

`// Java implementation of the approach ` `public` `class` `GfG ` `{ ` ` ` ` ` `// Function to return the count of consecutive ` ` ` `// elements in the array which are equal ` ` ` `static` `int` `countCon(` `int` `ar[], ` `int` `n) ` ` ` `{ ` ` ` `int` `cnt = ` `0` `; ` ` ` ` ` `for` `(` `int` `i = ` `0` `; i < n - ` `1` `; i++) ` ` ` `{ ` ` ` ` ` `// If consecutive elements are same ` ` ` `if` `(ar[i] == ar[i + ` `1` `]) ` ` ` `cnt++; ` ` ` `} ` ` ` `return` `cnt; ` ` ` `} ` ` ` ` ` `// Driver Code ` ` ` `public` `static` `void` `main(String []args){ ` ` ` ` ` `int` `ar[] = { ` `1` `, ` `2` `, ` `2` `, ` `3` `, ` `4` `, ` `4` `, ` `5` `, ` `5` `, ` `5` `, ` `5` `}; ` ` ` `int` `n = ar.length; ` ` ` `System.out.println(countCon(ar, n)); ` ` ` `} ` `} ` ` ` `// This code is contributed by Rituraj Jain ` |

*chevron_right*

*filter_none*

## Python3

`# Python3 implementation of the approach ` ` ` `# Function to return the count of consecutive ` `# elements in the array which are equal ` `def` `countCon(ar, n): ` ` ` `cnt ` `=` `0` ` ` ` ` `for` `i ` `in` `range` `(n ` `-` `1` `): ` ` ` ` ` `# If consecutive elements are same ` ` ` `if` `(ar[i] ` `=` `=` `ar[i ` `+` `1` `]): ` ` ` `cnt ` `+` `=` `1` ` ` ` ` `return` `cnt ` ` ` `# Driver code ` `ar ` `=` `[` `1` `, ` `2` `, ` `2` `, ` `3` `, ` `4` `, ` ` ` `4` `, ` `5` `, ` `5` `, ` `5` `, ` `5` `] ` `n ` `=` `len` `(ar) ` `print` `(countCon(ar, n)) ` ` ` `# This code is contributed by mohit kumar ` |

*chevron_right*

*filter_none*

## C#

`// C# implementation of the approach ` `using` `System; ` ` ` `class` `GfG ` `{ ` ` ` ` ` `// Function to return the count of consecutive ` ` ` `// elements in the array which are equal ` ` ` `static` `int` `countCon(` `int` `[] ar, ` `int` `n) ` ` ` `{ ` ` ` `int` `cnt = 0; ` ` ` ` ` `for` `(` `int` `i = 0; i < n - 1; i++) ` ` ` `{ ` ` ` ` ` `// If consecutive elements are same ` ` ` `if` `(ar[i] == ar[i + 1]) ` ` ` `cnt++; ` ` ` `} ` ` ` `return` `cnt; ` ` ` `} ` ` ` ` ` `// Driver Code ` ` ` `public` `static` `void` `Main() ` ` ` `{ ` ` ` ` ` `int` `[] ar = { 1, 2, 2, 3, 4, 4, 5, 5, 5, 5 }; ` ` ` `int` `n = ar.Length; ` ` ` `Console.WriteLine(countCon(ar, n)); ` ` ` `} ` `} ` ` ` `// This code is contributed by Code_Mech. ` |

*chevron_right*

*filter_none*

## PHP

`<?php ` `// PHP implementation of the approach ` ` ` `// Function to return the count of consecutive ` `// elements in the array which are equal ` `function` `countCon(` `$ar` `, ` `$n` `) ` `{ ` ` ` `$cnt` `= 0; ` ` ` ` ` `for` `(` `$i` `= 0; ` `$i` `< ` `$n` `- 1; ` `$i` `++) ` ` ` `{ ` ` ` ` ` `// If consecutive elements are same ` ` ` `if` `(` `$ar` `[` `$i` `] == ` `$ar` `[` `$i` `+ 1]) ` ` ` `$cnt` `++; ` ` ` `} ` ` ` `return` `$cnt` `; ` `} ` ` ` `// Driver code ` `$ar` `= ` `array` `(1, 2, 2, 3, 4, 4, 5, 5, 5, 5); ` `$n` `= sizeof(` `$ar` `); ` `echo` `countCon(` `$ar` `, ` `$n` `); ` ` ` `// This code is contributed ` `// by Akanksha Rai ` `?> ` |

*chevron_right*

*filter_none*

**Output:**

5

## Recommended Posts:

- Count Subarrays with Consecutive elements differing by 1
- Count pairs of elements such that number of set bits in their OR is B[i]
- Count pairs of elements such that number of set bits in their AND is B[i]
- Count pairs in an array such that both elements has equal set bits
- Count of index pairs with equal elements in an array
- Minimum number of elements to be removed so that pairwise consecutive elements are same
- Find elements of array using XOR of consecutive elements
- Replace array elements by sum of next two consecutive elements
- Sum of consecutive two elements in a array
- Find minimum sum such that one of every three consecutive elements is taken
- Count number of binary strings without consecutive 1's
- Modulus of all pairwise consecutive elements in an Array
- Minimum sum subsequence such that at least one of every four consecutive elements is picked
- Product of all pairwise consecutive elements in an Array
- Count ways to express a number as sum of consecutive numbers

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.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.