Representaciones taxicab como suma de dos cubos positivos
El 1729 se escribe como 1³ + 12³ y como 9³ + 10³, así que tiene dos representaciones. Escriba un número entero y verá cada pareja de cubos positivos que lo suma, o un resultado vacío si no hay ninguna. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- N
- 1 729
- Cantidad
- 2
Una representación taxicab expresa un entero como suma de los cubos de dos enteros positivos. Esta calculadora comprueba el entero indicado y devuelve todos los pares distintos que cumplen la igualdad, siempre con la base menor en primer lugar para evitar duplicados invertidos. Resulta útil para estudiar números taxicab famosos, verificar ejercicios de teoría de números y poner a prueba conjeturas mediante un cálculo exacto y determinista. Los números sin pares válidos también se aceptan: producen una lista vacía y un recuento de cero, no un error.
Qué significa el resultado
Cada registro devuelto contiene dos enteros positivos, a y b, cuyos cubos suman exactamente el número solicitado. La calculadora impone siempre que a sea menor o igual que b; por tanto, 1 al cubo más 12 al cubo y 12 al cubo más 1 al cubo cuentan como una sola representación. El campo de expresión muestra esa igualdad de forma compacta, mientras que el recuento indica cuántos pares no ordenados realmente distintos se encontraron.
Un recuento de cero no representa un fallo: significa que el entero no puede escribirse como suma de dos cubos positivos según esta definición. La condición de positividad es esencial. Las bases cero y negativas se excluyen deliberadamente, pues esta herramienta responde a la pregunta taxicab clásica y no al problema más amplio de sumas de cubos con signo.
Gracias a esta convención precisa, usted puede comparar resultados de ejercicios, matemáticas recreativas y búsquedas programáticas sin eliminar manualmente pares reflejados.
Cómo se encuentran todos los pares
El algoritmo comienza con la primera base permitida más pequeña y la segunda base más grande posible. Compara con n la suma de sus cubos. Si la suma es demasiado pequeña, aumentar la primera base es el único movimiento que puede acercarla al objetivo; si es demasiado grande, se reduce la segunda.
Cuando hay coincidencia exacta, se guarda el par y ambos punteros avanzan hacia el centro. Como los cubos crecen estrictamente para enteros positivos, este recorrido de dos punteros no puede saltarse un par válido ni informar dos veces del mismo. También evita probar todas las combinaciones posibles: en lugar de efectuar una cantidad cuadrática de comparaciones, realiza un trabajo proporcional a la raíz cúbica de la entrada.
Con el máximo declarado, toda la aritmética permanece dentro del intervalo de enteros seguros de JavaScript, de modo que las igualdades son exactas. No hay muestreo aleatorio, tablas externas ni solicitudes de red.
Cómo elegir la entrada y utilizar la salida
Indique n como un entero entre 2 y 1,000,000,000,000. Se rechazan fracciones, cadenas numéricas, valores no finitos, enteros no seguros y valores inferiores a dos porque incumplen el contrato publicado. Si estudia un número taxicab conocido, consulte primero el recuento y después use la matriz de representaciones para obtener las bases.
Al examinar muchos candidatos, trate una matriz vacía como un resultado normal; un error de validación, en cambio, requiere corregir la entrada. Esos son problemas computacionales distintos.
Qué puede hacer con ella
Comprobar un número taxicab famoso
Confirme los pares distintos de cubos positivos de un ejemplo conocido, como 1729.
Verificar un ejercicio de teoría de números
Compare una lista de pares calculada a mano con un resultado determinista completo.
Crear un conjunto de datos matemáticos
Consulte enteros individuales y guarde sus recuentos normalizados y sus pares de bases.
Preguntas frecuentes
¿Qué se considera una representación distinta?
Un par de enteros positivos con la base menor primero. Invertir las dos bases no crea otra representación.
¿Qué ocurre si no hay representaciones?
La solicitud se completa correctamente con el recuento en cero y una matriz de representaciones vacía.
¿Por qué n debe ser al menos dos?
La menor suma de dos cubos positivos es 1 al cubo más 1 al cubo, cuyo resultado es dos.
¿De cuántas formas se escribe el 1729 como suma de dos cubos?
De dos: 1³ + 12³ y 9³ + 10³. Cada pareja aparece con el número menor primero, de modo que 12³ + 1³ no se cuenta otra vez como una forma distinta.
¿Cuál es el número más grande que puedo comprobar?
Puede comprobar cualquier número entero desde 2 hasta 1.000.000.000.000. Dentro de ese intervalo cada suma de cubos se compara de forma exacta, así que ninguna coincidencia se debe a un redondeo.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/numth/taxicab-representations \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":1729}'const res = await fetch("https://api.kit.forhosting.com/numth/taxicab-representations", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 1729
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/taxicab-representations",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 1729
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/taxicab-representations", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":1729}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":1729}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/taxicab-representations", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"n": 1729
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.taxicab_representations",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Cómo se encuentran todos los pares
La misma función pura alimenta la API y la ejecución en el navegador, con idénticos orden, campos, validación y resultados.
Cómo elegir la entrada y utilizar la salida
Esta capacidad comprueba un solo entero por solicitud; no busca en un intervalo el siguiente número taxicab ni demuestra que un número sea el mínimo con cierta cantidad de representaciones. El uso de la API cuesta $0.002 por solicitud y el formato determinista facilita almacenar o comparar las respuestas posteriores.
Preguntas técnicas
¿Se incluyen cubos de cero o de números negativos?
No. Ambas bases deben ser enteros positivos.
¿Cuánto cuesta una solicitud de API?
Cada solicitud de API cuesta $0.002.