Ketika kami menerbitkan beberapa perangkat lunak, kami menetapkan nomor versi untuknya. Dan pengguna mungkin ingin memperbarui ke versi terbaru dari beberapa perangkat lunak. Jadi, inilah saatnya untuk mencari tahu versi mana yang harus lebih baru.
Memasukkan
Masukkan dua nomor versi sebagai string.
Dalam konteks tantangan ini, kami hanya mendukung nomor versi yang merupakan beberapa digit yang digabungkan dengan titik.
- Nomor versi adalah string yang hanya berisi digit (
0
~9
) dan titik (.
). - Dots tidak akan menjadi karakter pertama / terakhir dari nomor versi.
- Harus ada beberapa digit di antara titik-titik. Tidak ada dua titik yang muncul terus menerus.
- Semua angka dalam nomor versi akan kurang dari 2 16 .
Keluaran
Bandingkan nomor versi yang dimasukkan dan hasilkan apakah yang pertama lebih besar dari / sama dengan / kurang dari yang kedua. Anda diperbolehkan memilih salah satu dari presentasi berikut:
- Gunakan angka positif / nol / angka negatif, sedangkan nol berarti sama;
- Gunakan tiga nilai berbeda konstan;
Perbandingan
Anda tidak diharuskan untuk mengimplementasikan algoritma yang dijelaskan di bagian ini. Kiriman Anda valid selama menghasilkan hasil yang sama dengan algoritma ini.
- Nomor versi adalah beberapa angka desimal yang digabungkan dengan titik. Kami pertama-tama membagi dua nomor versi menjadi array angka;
- Padding akhir array dengan nol untuk membuat mereka memiliki panjang yang sama;
- Bandingkan dari item pertama ke yang terakhir:
- Jika dua item array berbeda, angka yang lebih besar berarti angka versi yang lebih besar
- Jika mereka sama, terus membandingkan item berikut;
- Jika semua item dalam array sama, kedua versi sama.
Testcases
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 >