Cuando publicamos algún software, le asignamos un número de versión. Y los usuarios pueden querer actualizar a la última versión de algún software. Entonces, es el momento de averiguar qué versión debería ser más nueva.
Entrada
Ingrese dos números de versión como cadenas.
En el contexto de este desafío, solo admitimos números de versión que son algunos dígitos unidos por puntos.
- Un número de versión es una cadena que solo puede contener dígitos (
0
~9
) y puntos (.
). - Los puntos no serían el primer / último carácter de un número de versión.
- Debe haber algunos dígitos entre puntos. No pueden aparecer dos puntos continuamente.
- Todos los números en un número de versión serían menores que 2 16 .
Salida
Compare los números de versión ingresados y genere si el primero es mayor que / igual a / menor que el segundo. Puede elegir una de las siguientes presentaciones:
- Use número positivo / cero / número negativo, mientras que cero significa igual;
- Use tres valores distintos constantes;
Comparando
No es necesario que implemente el algoritmo descrito en esta sección. Su envío es válido siempre que resulte el mismo resultado con este algoritmo.
- Los números de versión son algunos números decimales unidos por puntos. Primero dividimos los dos números de versión en matrices de números;
- Rellenar el final de las matrices con ceros para que tengan la misma longitud;
- Compare desde el primer elemento hasta el último:
- Si los dos elementos de la matriz son diferentes, el número mayor significa un número de versión mayor
- Si son iguales, continúe comparando los siguientes elementos;
- Si todos los elementos de la matriz son iguales, las dos versiones son iguales.
Casos de prueba
version1 version2 result
2 1 >
1.0.0 1 =
1.0 1.0.0 =
1.2.42 1.2.41 >
1.1.56789 1.2.0 <
1.10 1.2 >
1.20 1.150 <
18.04 18.4 =
7.010 7.8 >
1.0.0.1.0 1.00.00.2 <
00.00.01 0.0.0.1 >
0.0.1 0.1 <
42.0 4.2.0 >
999.999 999.999.1 <
2018.08.1 2018.08 >