[프로그래머스/Lv. 1] 숫자 짝꿍
🔺 문제
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
🔺 코드
고민 좀 해보다가 모르겠어서 다른 분 코드를 보았다...
[프로그래머스] Lv.1 숫자 짝꿍(JAVA)
https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞
2dahm.tistory.com
class Solution {
public String solution(String X, String Y) {
int[] cntX = new int[10];
int[] cntY = new int[10];
for(String tmpX : X.split("")) cntX[Integer.parseInt(tmpX)]++;
for(String tmpY : Y.split("")) cntY[Integer.parseInt(tmpY)]++;
StringBuilder sb = new StringBuilder();
for(int i = cntX.length - 1; i >= 0 ; i--) {
while(cntX[i] > 0 && cntY[i] > 0) {
sb.append(i);
cntX[i]--;
cntY[i]--;
}
}
String answer = "";
if("".equals(sb.toString())) {
answer = "-1";
} else if("0".equals(sb.toString().substring(0,1))) {
answer = "0";
} else {
answer = sb.toString();
}
return answer;
}
}
String으로 하면 시간초과가 뜨고 실패한다고 한다...
그래서 StringBuilder를 이용하신 것이라고...
우와.. 종이에 직접 배열 그려보고 써보고서야 저 식을 이해했다....
나중에 다시 꼭 복습해야지
(참고)
[JAVA] StringBuilder란? StringBuilder 사용법
자바에서 문자열하면 String을 대개 많이 떠올리고 사용할 것이다. 그런데 이 문자열이 1개 이상 있어서 이것들을 더해야 한다고 하면 어떤 방법을 쓸 수 있을까? 간단하게는 이 방법을 쓸 수 있을
onlyfor-me-blog.tistory.com
자바 StringBuilder 사용법 및 사용하는 이유
StringBuilder 사용법 및 사용하는 이유 자바에서 문자열하면 자연스럽게 String이 떠오른다. String은 소위 불변(immutable)객체라고 한다. String str1 = "abc";, String str2 = "def"; 2개의 String객체가 있을 때, 만
hardlearner.tistory.com