├── .github └── ISSUE_TEMPLATE │ └── soluci-n.md └── README.md /.github/ISSUE_TEMPLATE/soluci-n.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Solución 3 | about: Solución al reto propuesto en este repositorio. 4 | title: Solución de {tu_nombre} 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | :link: Link a tu solución: {Ej. https://leetcode.com/submissions/detail/455069826/} 11 | :woman_technologist: Nombre: {Ej. Fulanito} 12 | :bird: Twitter (opcional): 13 | :smiley_cat: Github (opcional): 14 | :earth_americas: Web (opcional): 15 | 16 | *No olvides reemplazar los valores {} con tu información real, si no tu solución no será tomada en cuenta. 17 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Primer reto Undefined 2 | 3 | Este será el primero de una serie de retos enfocados a ver qué tanto se nos da solucionar problemas de lógica o de maquetación (esto dependerá del reto) y de paso divertirnos un poco entre la comunidad. 4 | 5 | Este reto tendrá dos ganadores, ya que tendremos dos categorías. 6 | 7 | 1. El código más eficiente, o sea, el código que ejecute la solución en menor tiempo. 8 | 2. La solución más creativa, sí, la solución que al ver el código nos haga pensar ¡Wow, jamás creí que se podía resolver así! 9 | 10 | Dejando de lado la introducción, pasemos a hablar de qué tratará este reto. 11 | 12 | ## Artemisa a Diana 13 | 14 | Los números romanos están representados por siete símbolos diferentes que son: `I`, `V`, `X`, `L`, `C`, `D` y `M`. 15 | 16 | | Símbolo | Valor | 17 | | ------- | ----- | 18 | | I | 1 | 19 | | V | 5 | 20 | | X | 10 | 21 | | L | 50 | 22 | | C | 100 | 23 | | D | 500 | 24 | | M | 1000 | 25 | 26 | Por ejemplo, `2`es escrito como `II` en números romanos, simplemente escribiendo dos unos, uno a un lado del otro. `12`es escrito como `XII`, lo que es `X + II`, etcétera. 27 | 28 | Los números romanos regularmente se escriben del más grande al más pequeño, de izquierda a derecha. Pero el número `4` por ejemplo, no es `IIII`. En lugar de eso, este número se representa como `IV`. Esto es porque sí el `1` esta antes del `5` esto quiere decir que se le resta al `5`dando como resultado `4`. Esto también aplica al `9`, el cual se escribe como `IX`. 29 | 30 | Te dejamos seis instancias en donde la resta es usada para representar un número: 31 | 32 | - `I` se puedo poner antes del `V` (5) y del `X` (10) para tener `4` y `9`. 33 | - `X` se puedo poner antes del `L` (50) y del `C` (100) para tener `40` y `90`. 34 | - `C` se puedo poner antes del `D` (500) y del `M` (1000) para tener `400` y `900`. 35 | 36 | ### 🏆 Tu reto 37 | 38 | Dado un número entero, conviértelo a un número romano. 39 | 40 | Ejemplos 41 | 42 | No. 01 43 | 44 | ``` 45 | Input: num = 3 46 | Output: "III" 47 | ``` 48 | 49 | No. 02 50 | 51 | ``` 52 | Input: num = 4 53 | Output: "IV" 54 | ``` 55 | 56 | No. 03 57 | 58 | ``` 59 | Input: num = 9 60 | Output: "IX" 61 | ``` 62 | 63 | No. 04 64 | 65 | ``` 66 | Input: num = 58 67 | Output: "LVIII" 68 | Explicación: L = 50, V = 5, III = 3 69 | ``` 70 | 71 | No. 05 72 | 73 | ``` 74 | Input: num = 1994 75 | Output: "MCMXCIV" 76 | Explicación: M = 1000, CM = 900, XC = 90 and IV = 4 77 | ``` 78 | 79 | ### ❌ Restricciones 80 | 81 | Este reto puede ser desarrollado en el lenguaje de tu preferencia. 82 | 83 | Ten en cuenta que `num`estará delimitado por: 84 | 85 | ``` 86 | 1 <= num <= 3999 87 | ``` 88 | 89 | ### 🚀 Empieza desde aquí 90 | 91 | Encuentra este reto en [LeetCode](https://leetcode.com/problems/integer-to-roman/), soluciónalo en el lenguaje de tu preferencia y en este mismo repositorio abre un issue para compartirnos tu solución. 92 | 93 | JavaScript 94 | 95 | ```js 96 | /** 97 | * @param {number} num 98 | * @return {string} 99 | */ 100 | var intToRoman = function(num) { 101 | 102 | }; 103 | ``` 104 | 105 | Python 106 | 107 | ```py 108 | class Solution: 109 | def intToRoman(self, num: int) -> str: 110 | ``` 111 | --------------------------------------------------------------------------------