How to find all elements (leaders) in an array that are greater than all elements to their right in C++

1 Answer

0 votes
#include <iostream>

void PrintArrayLeaders(int arr[], int size) {
    for (int i = 0; i < size; i++) {
        int j;
        for (j = i + 1; j < size; j++) {
            if (arr[i] <= arr[j])
                break;
        }    
        if (j == size) 
            std::cout << arr[i] << " ";
  }
}
  
int main(void)
{
    int arr[] = {1, 99, 16, 5, 75, 9, 50, 60, 0, 19};
    
    int size = sizeof(arr) / sizeof(arr[0]);
    
    PrintArrayLeaders(arr, size);
}





/*
run:

99 75 60 19 

*/

 



answered Aug 29, 2022 by avibootz
...