Encuentre la pendiente del número dado num . La pendiente de un número es el conteo de los dígitos mínimos y máximos en él. Un dígito se llama mínimo si el dígito es menor que el dígito anterior y posterior. De manera similar, un dígito se llama máximo si el dígito es mayor que el dígito anterior y posterior.
Ejemplos:
Input : 1213321 Output : 2 1213321- The highlighted digit '2' is a maxima and highlighted digit '1' is a minima. Input : 273299302236131 Output : 6
Fuente: Experiencia de entrevista de Barclays (en el campus) .
Enfoque: recorrer los dígitos del número dado desde el segundo dígito hasta el penúltimo dígito. Para cada dígito, compruebe si el dígito es mayor o menor que los dígitos anteriores y posteriores. Obtener el recuento de dichos dígitos.
C++
// C++ implementation to find slope of a number #include <bits/stdc++.h> using namespace std; // function to find slope of a number int slopeOfNum(string num, int n) { // to store slope of the given // number 'num' int slope = 0; // loop from the 2nd digit up to the 2nd last digit // of the given number 'num' for (int i = 1; i < n - 1; i++) { // if the digit is a maxima if (num[i] > num[i - 1] && num[i] > num[i + 1]) slope++; // if the digit is a minima else if (num[i] < num[i - 1] && num[i] < num[i + 1]) slope++; } // required slope return slope; } // Driver program to test above int main() { string num = "1213321"; int n = num.size(); cout << "Slope = " << slopeOfNum(num, n); return 0; }
Java
// Java implementation to // find slope of a number import java.io.*; class GFG { // function to find // slope of a number static int slopeOfNum(String num, int n) { // to store slope of the // given number 'num' int slope = 0; // loop from the 2nd digit // up to the 2nd last digit // of the given number 'num' for (int i = 1; i < n - 1; i++) { // if the digit is a maxima if (num.charAt(i) > num.charAt(i - 1) && num.charAt(i) > num.charAt(i + 1)) slope++; // if the digit is a minima else if (num.charAt(i) < num.charAt(i - 1) && num.charAt(i) < num.charAt(i + 1)) slope++; } // required slope return slope; } // Driver code public static void main (String[] args) { String num = "1213321"; int n = num.length(); System.out.println("Slope = " + slopeOfNum(num, n)); } } // This code is contributed by Mahadev99
Python 3
# Python 3 implementation to find # slope of a number # function to find slope of a number def slopeOfNum(num, n): # to store slope of the given # number 'num' slope = 0 # loop from the 2nd digit up # to the 2nd last digit # of the given number 'num' for i in range(1, n - 1) : # if the digit is a maxima if (num[i] > num[i - 1] and num[i] > num[i + 1]): slope += 1 # if the digit is a minima elif (num[i] < num[i - 1] and num[i] < num[i + 1]): slope += 1 # required slope return slope # Driver Code if __name__ == "__main__": num = "1213321" n = len(num) print("Slope =", slopeOfNum(num, n)) # This code is contributed by ita_c
C#
// C# implementation to // find slope of a number class GFG { // function to find slope of a number static int slopeOfNum(string num, int n) { // to store slope of the // given number 'num' int slope = 0; // loop from the 2nd digit // up to the 2nd last digit // of the given number 'num' for (int i = 1; i < n - 1; i++) { // if the digit is a maxima if (num[i] > num[i - 1] && num[i] > num[i + 1]) slope++; // if the digit is a minima else if (num[i] < num[i - 1] && num[i] < num[i + 1]) slope++; } // required slope return slope; } // Driver code public static void Main() { string num = "1213321"; int n = num.Length; System.Console.WriteLine("Slope = " + slopeOfNum(num, n)); } } // This code is contributed by mits
PHP
<?php // PHP implementation to find // slope of a number // function to find slope of a number function slopeOfNum($num, $n) { // to store slope of the given // number 'num' $slope = 0; // loop from the 2nd digit up // to the 2nd last digit of // the given number 'num' for ($i = 1; $i < $n - 1; $i++) { // if the digit is a maxima if ($num[$i] > $num[$i - 1] && $num[$i] > $num[$i + 1]) $slope++; // if the digit is a minima else if ($num[$i] < $num[$i - 1] && $num[$i] < $num[$i + 1]) $slope++; } // required slope return $slope; } // Driver Code $num = "1213321"; $n = strlen($num); echo "Slope = " . slopeOfNum($num, $n); // This code is contributed // by Akanksha Rai ?>
Javascript
<script> // Javascript implementation to // find slope of a number // function to find // slope of a number function slopeOfNum(num,n) { // to store slope of the // given number 'num' let slope = 0; // loop from the 2nd digit // up to the 2nd last digit // of the given number 'num' for (let i = 1; i < n - 1; i++) { // if the digit is a maxima if (num[i] > num[i-1] && num[i] > num[i+1]) slope++; // if the digit is a minima else if (num[i] < num[i-1] && num[i] < num[i+1]) slope++; } // required slope return slope; } // Driver code let num = "1213321"; let n = num.length; document.write("Slope = " + slopeOfNum(num, n)); // This code is contributed by avanitrachhadiya2155 </script>
Producción:
Slope = 2
Complejidad temporal: O(n).
Publicación traducida automáticamente
Artículo escrito por ayushjauhari14 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA