Dados cuatro enteros a , b , c y d . La tarea es encontrar el número X que cuando se suma a los números ayb la razón cambia de a:b a c :d . Ejemplos:
Entrada: a = 3, b = 6, c = 3, d = 4
Salida: 6
Cuando se suma 6 a a y b
a = 3 + 6 = 9
b = 6 + 6 = 12
Y, la nueva razón será 9 : 12 = 3 : 4
Entrada: a = 2, b = 3, c = 4, d = 5
Salida: 2
Enfoque: la relación anterior es a : b y la relación nueva es c : d . Sea el número requerido X ,
Entonces, (a + X) / (b + X) = c / d
o, ad + dx = bc + cx
o, x(d – c) = bc – ad
Entonces, x = ( bc – ad) / (d – c)
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // Function to return the // required number X int getX(int a, int b, int c, int d) { int X = (b * c - a * d) / (d - c); return X; } // Driver code int main() { int a = 2, b = 3, c = 4, d = 5; cout << getX(a, b, c, d); return 0; }
Java
// Java implementation of the approach import java.io.*; class GFG { // Function to return the // required number X static int getX(int a, int b, int c, int d) { int X = (b * c - a * d) / (d - c); return X; } // Driver code public static void main (String[] args) { int a = 2, b = 3, c = 4, d = 5; System.out.println (getX(a, b, c, d)); } } // The code is contributed by ajit..@23
Python
# Python3 implementation of the approach # Function to return the # required number X def getX(a, b, c, d): X = (b * c - a * d) // (d - c) return X # Driver code a = 2 b = 3 c = 4 d = 5 print(getX(a, b, c, d)) # This code is contributed by mohit kumar 29
C#
// C# implementation of the approach using System; class GFG { // Function to return the // required number X static int getX(int a, int b, int c, int d) { int X = (b * c - a * d) / (d - c); return X; } // Driver code static public void Main () { int a = 2, b = 3, c = 4, d = 5; Console.Write(getX(a, b, c, d)); } } // The code is contributed by Tushil.
Javascript
<script> // javascript implementation of the approach // Function to return the // required number X function getX(a , b , c , d) { var X = (b * c - a * d) / (d - c); return X; } // Driver code var a = 2, b = 3, c = 4, d = 5; document.write(getX(a, b, c, d)); // This code is contributed by 29AjayKumar </script>
2
Complejidad Temporal: O(1), ya que existe una operación aritmética básica que requiere un tiempo constante.
Espacio Auxiliar: O(1), ya que no se ha ocupado ningún espacio extra.
Publicación traducida automáticamente
Artículo escrito por IshwarGupta y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA