Número de elementos que se pueden ver desde el lado derecho

Dada una array de números enteros, considere los elementos como la altura del edificio, encuentre el número de edificios que se pueden ver desde el lado derecho.
Ejemplos: 
 

Input : height[] = {2, 6, 2, 4, 0, 1}
Output : 3
we can see only 3 building i.e with height 1, 4 and 6.

Input : height[] = {4, 8, 2, 0, 0, 5}
Output : 2

Este problema parece ser encontrar la subsecuencia creciente más larga desde la derecha, pero en realidad no es así. Solo tenemos que aumentar el conteo si encontramos algún edificio con mayor altura encontrado hasta ahora. 
A continuación se muestra la implementación del enfoque anterior. 
 

C++

// CPP program to find number of elements
// that can be seen from right side.
#include <bits/stdc++.h>
using namespace std;
 
int numberOfElements(int height[], int n)
{
    int max_so_far = 0;
    int count = 0;
 
    for (int i = n - 1; i >= 0; i--) {
        if (height[i] > max_so_far) {
            max_so_far = height[i];
            count++;
        }
    }
    return count;
}
 
// Driver code
int main()
{
    int n = 6;
    int height[] = { 4, 8, 2, 0, 0, 5 };
    cout << numberOfElements(height, n);
    return 0;
}

Java

// Java program to find number of elements
// that can be seen from right side.
import java.util.*;
class Solution
{
  
static int numberOfElements(int height[], int n)
{
    int max_so_far = 0;
    int coun = 0;
  
    for (int i = n - 1; i >= 0; i--) {
        if (height[i] > max_so_far) {
            max_so_far = height[i];
            coun++;
        }
    }
    return coun;
}
 
// Driver code
public static void main(String args[])
{
    int n = 6;
    int height[] = { 4, 8, 2, 0, 0, 5 };
    System.out.println( numberOfElements(height, n));
   
}
 
}
//contributed by Arnab Kundu

Python3

# Python3 program to find
# number of elements
# that can be seen from right side
 
def numberOfElements(height, n):
     
    max_so_far = 0
    coun = 0
     
    for i in range(n-1,-1,-1):
        if height[i] > max_so_far:
            max_so_far = height[i]
            coun = coun + 1
    return coun
 
#Driver code
if __name__=='__main__':
    n = 6
    height = [4, 8, 2, 0, 0, 5]
    print(numberOfElements(height, n))
     
# This code is contributed by
# Shashank_Sharma    

C#

// C# program to find number of elements
// that can be seen from right side.
using System;
 
class GFG
{
public static int numberOfElements(int []height,
                                   int n)
{
    int max_so_far = 0;
    int coun = 0;
 
    for (int i = n - 1; i >= 0; i--)
    {
        if (height[i] > max_so_far)
        {
            max_so_far = height[i];
            coun++;
        }
    }
    return coun;
}
 
// Driver code
public static void Main()
{
    int n = 6;
    int []height = { 4, 8, 2, 0, 0, 5 };
    Console.WriteLine(numberOfElements(height, n));
}
}
 
// This code is contributed by Soumik

PHP

<?php
// PHP program to find number of elements
// that can be seen from right side.
 
function numberOfElements($height, $n)
{
    $max_so_far = 0;
    $coun = 0;
 
    for ($i = $n - 1; $i >= 0; $i--)
    {
        if ($height[$i] > $max_so_far)
        {
            $max_so_far = $height[$i];
            $coun++;
        }
    }
    return $coun;
}
 
// Driver code
$n = 6;
$height = array(4, 8, 2, 0, 0, 5 );
echo numberOfElements($height, $n);
 
// This code is contributed
// by Akanksha Rai

Javascript

<script>
// javascript program to find number of elements
// that can be seen from right side.
 
    function numberOfElements(height , n)
    {
        var max_so_far = 0;
        var coun = 0;
 
        for (let i = n - 1; i >= 0; i--)
        {
            if (height[i] > max_so_far)
            {
                max_so_far = height[i];
                coun++;
            }
        }
        return coun;
    }
 
    // Driver code
    var n = 6;
    var height = [ 4, 8, 2, 0, 0, 5 ];
    document.write(numberOfElements(height, n));
 
// This code is contributed by gauravrajput1
</script>
Producción: 

2

 

Publicación traducida automáticamente

Artículo escrito por Kushdeep_Mittal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *