-
leetcode.com/problems/compare-version-numbers/
Given two version numbers, version1 and version2, compare them.
Version numbers consist of one or more revisions joined by a dot '.'. Each revision consists of digits and may contain leading zeros. Every revision contains at least one character. Revisions are 0-indexed from left to right, with the leftmost revision being revision 0, the next revision being revision 1, and so on. For example 2.5.33 and 0.1 are valid version numbers.
To compare version numbers, compare their revisions in left-to-right order. Revisions are compared using their integer value ignoring any leading zeros. This means that revisions 1 and 001 are considered equal. If a version number does not specify a revision at an index, then treat the revision as 0. For example, version 1.0 is less than version 1.1 because their revision 0s are the same, but their revision 1s are 0 and 1 respectively, and 0 < 1.
Return the following:
- If version1 < version2, return -1.
- If version1 > version2, return 1.
- Otherwise, return 0.
첫번째 시도.. 정규 표현식 이용
문제점 1. 문자열로 비교하려해서 틀렸다.
문제점 2. idx 하나하나 잘라내서 1.21이랑 1.12를 1.12가 더 크다고 판단한다.
두번째 시도.. 코드가 점점 더러워지고,, 난잡해진다.. 정규표현을 쓰면 안되는건가? 에러도 난다..
Gist 초보라서,,, 같은 embed 에 계쏙 edit해서 이전코드가 다 날라가는 만행을 저질렀다..
그래도 정규표현식으로 꼭 풀고싶다.. 시도하겠다!
split으로 쪼개고 자리 수 맞춰서 비교해서 풀었다..ㅠㅠ밍
+ 9월 13일 추가
푸럭따 ㅠㅠ 뭐 사실 정규표현은 .0제거에만 사용했지만,,
'2020년 > 코테' 카테고리의 다른 글
[코테 연습] Bulls and Cows (0) 2020.09.14 [코테연습] Combination Sum III (0) 2020.09.14 [코테 연습] Maximum Number of Coins You Can Get (0) 2020.09.09 [코테 연습] Largest Perimeter Triangle (0) 2020.09.09 [코테 연습] Relative Sort Array (0) 2020.09.09