Dado N, cuente todos los ‘a’ y ‘b’ que satisfacen la condición a^3 + b^3 = N.
Ejemplos:
Input : N = 9 Output : 2 1^3 + 2^3 = 9 2^3 + 1^3 = 9 Input : N = 28 Output : 2 1^3 + 3^3 = 28 3^3 + 1^3 = 28
Nota: (a, b) y (b, a) deben considerarse como dos pares diferentes.
Preguntado en: Adobe
Implementation: Traverse numbers from 1 to cube root of N. a) Subtract cube of current number from N and check if their difference is a perfect cube or not. i) If perfect cube then increment count. 2- Return count.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ program to count pairs whose sum // cubes is N #include<bits/stdc++.h> using namespace std; // Function to count the pairs satisfying // a ^ 3 + b ^ 3 = N int countPairs(int N) { int count = 0; // Check for each number 1 to cbrt(N) for (int i = 1; i <= cbrt(N); i++) { // Store cube of a number int cb = i*i*i; // Subtract the cube from given N int diff = N - cb; // Check if the difference is also // a perfect cube int cbrtDiff = cbrt(diff); // If yes, then increment count if (cbrtDiff*cbrtDiff*cbrtDiff == diff) count++; } // Return count return count; } // Driver program int main() { // Loop to Count no. of pairs satisfying // a ^ 3 + b ^ 3 = i for N = 1 to 10 for (int i = 1; i<= 10; i++) cout << "For n = " << i << ", " << countPairs(i) <<" pair exists\n"; return 0; }
Java
// Java program to count pairs whose sum // cubes is N class Test { // method to count the pairs satisfying // a ^ 3 + b ^ 3 = N static int countPairs(int N) { int count = 0; // Check for each number 1 to cbrt(N) for (int i = 1; i <= Math.cbrt(N); i++) { // Store cube of a number int cb = i*i*i; // Subtract the cube from given N int diff = N - cb; // Check if the difference is also // a perfect cube int cbrtDiff = (int) Math.cbrt(diff); // If yes, then increment count if (cbrtDiff*cbrtDiff*cbrtDiff == diff) count++; } // Return count return count; } // Driver method public static void main(String args[]) { // Loop to Count no. of pairs satisfying // a ^ 3 + b ^ 3 = i for N = 1 to 10 for (int i = 1; i<= 10; i++) System.out.println("For n = " + i + ", " + + countPairs(i) + " pair exists"); } }
Python 3
# Python 3 program to count pairs # whose sum cubes is N import math # Function to count the pairs # satisfying a ^ 3 + b ^ 3 = N def countPairs(N): count = 0 # Check for each number 1 # to cbrt(N) for i in range(1, int(math.pow(N, 1/3) + 1)): # Store cube of a number cb = i * i * i # Subtract the cube from given N diff = N - cb # Check if the difference is also # a perfect cube cbrtDiff = int(math.pow(diff, 1/3)) # If yes, then increment count if (cbrtDiff * cbrtDiff * cbrtDiff == diff): count += 1 # Return count return count # Driver program # Loop to Count no. of pairs satisfying # a ^ 3 + b ^ 3 = i for N = 1 to 10 for i in range(1, 11): print('For n = ', i, ', ', countPairs(i), ' pair exists') # This code is contributed by Smitha.
C#
// C# program to count pairs whose sum // cubes is N using System; class Test { // method to count the pairs satisfying // a ^ 3 + b ^ 3 = N static int countPairs(int N) { int count = 0; // Check for each number 1 to cbrt(N) for (int i = 1; i <= Math.Pow(N,(1.0/3.0)); i++) { // Store cube of a number int cb = i*i*i; // Subtract the cube from given N int diff = N - cb; // Check if the difference is also // a perfect cube int cbrtDiff = (int) Math.Pow(diff,(1.0/3.0)); // If yes, then increment count if (cbrtDiff*cbrtDiff*cbrtDiff == diff) count++; } // Return count return count; } // Driver method public static void Main() { // Loop to Count no. of pairs satisfying // a ^ 3 + b ^ 3 = i for N = 1 to 10 for (int i = 1; i<= 10; i++) Console.Write("For n = " + i + ", " + + countPairs(i) + " pair exists"+"\n"); } }
PHP
<?php // PHP program to count pairs // whose sum cubes is N // Function to count the pairs // satisfying a ^ 3 + b ^ 3 = N function countPairs($N) { $count = 0; // Check for each number // 1 to cbrt(N) for ($i = 1; $i <= (int)pow($N, 1 / 3); $i++) { // Store cube of a number $cb = $i * $i * $i; // Subtract the cube from // given N $diff = ($N - $cb); // Check if the difference is // also a perfect cube $cbrtDiff = (int)pow($diff, 1 / 3); // If yes, then increment count if ($cbrtDiff * $cbrtDiff * $cbrtDiff == $diff) $count++; } // Return count return $count; } // Driver Code // Loop to Count no. of pairs // satisfying a ^ 3 + b ^ 3 = i // for N = 1 to 10 for ($i = 1; $i<= 10; $i++) echo "For n = " , $i , ", ", countPairs($i) ," pair exists\n"; // This code is contributed by jit_t ?>
Javascript
<script> // Javascript program to count pairs whose sum cubes is N // method to count the pairs satisfying // a ^ 3 + b ^ 3 = N function countPairs(N) { let count = 0; // Check for each number 1 to cbrt(N) for (let i = 1; i <= parseInt(Math.pow(N,(1.0/3.0)), 10); i++) { // Store cube of a number let cb = i*i*i; // Subtract the cube from given N let diff = N - cb; // Check if the difference is also // a perfect cube let cbrtDiff = parseInt(Math.pow(diff,(1.0/3.0)), 10); // If yes, then increment count if (cbrtDiff*cbrtDiff*cbrtDiff == diff) count++; } // Return count return count; } // Loop to Count no. of pairs satisfying // a ^ 3 + b ^ 3 = i for N = 1 to 10 for (let i = 1; i<= 10; i++) document.write("For n = " + i + ", " + countPairs(i) + " pair exists"+"</br>"); </script>
Producción:
For n= 1, 1 pair exists For n= 2, 1 pair exists For n= 3, 0 pair exists For n= 4, 0 pair exists For n= 5, 0 pair exists For n= 6, 0 pair exists For n= 7, 0 pair exists For n= 8, 1 pair exists For n= 9, 2 pair exists For n= 10, 0 pair exists
Referencia: https://www.careercup.com/question?id=5954491572551680
Este artículo es una contribución de Sahil Chhabra . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA