728x90
반응형
버전 정보가 있을때 맥스값을 찾아보자
어렵게 풀기
public void findMaxVersion() {
String[] version = {"1.2.3", "2.2", "2.8", "2.7.1", "1.23.1"};
int minLength = 0;
int maxIndex = 0;
String maxVersion = version[0];
for (int i = 1; i < version.length; i++) {
int maxLength = Math.max(version[i].length(), maxVersion.length());
String[] splitedMaxVersion = maxVersion.split("\\.");
String[] splitedVersion = version[i].split("\\.");
boolean isCurrentMaxVersion = true;
for(int j = 0; j < maxLength; j++) {
int maxVersionSubNumber = j < splitedMaxVersion.length ? Integer.parseInt(splitedMaxVersion[j]) : 0;
int versionSunNumber = j < splitedVersion.length ? Integer.parseInt(splitedVersion[j]) : 0;
if (maxVersionSubNumber > versionSunNumber) {
isCurrentMaxVersion = true;
break;
}
if (maxVersionSubNumber < versionSunNumber) {
isCurrentMaxVersion = false;
break;
}
}
if (!isCurrentMaxVersion) {
maxVersion = version[i];
}
}
System.out.println(maxVersion);
}
// 쉽게 풀기
String[] version = {"0.91","1.999999","1.2.3", "2.2", "3", "2.8", "2.7.1", "1.23.1","3.1.0","3.1.1","31"};
Arrays.sort(version);
728x90
반응형
'Algorithm > 번외' 카테고리의 다른 글
[Algorithm] 뿌요뿌요(퍼즐게임) (0) | 2021.10.19 |
---|---|
[Algorithm] 벌집 만들기 (0) | 2021.10.05 |
댓글