# Count consecutive pairs of same elements

• Last Updated : 09 Jun, 2022

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:
(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:
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 ``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;``}`

## 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`

## 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`

## 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.`

## PHP

 ``

## Javascript

 ``

Output:

`5`

Time Complexity: O(n)
Auxiliary Space: O(1)

My Personal Notes arrow_drop_up