Leetcode Java Maximum Number of Balloons
업데이트:
문제
코드
class Solution {
public int maxNumberOfBalloons(String text) {
int[] count = new int[26];
for (char c : text.toCharArray()) {
count[c - 'a']++;
}
int result = count[1];
result = Math.min(result, count[0]);
result = Math.min(result, count[11] / 2);
result = Math.min(result, count[14] / 2);
result = Math.min(result, count[13]);
return result;
}
}
결과
설명
-
text 문자열 내 문자들을 이용하여 “balloon” 문자열 몇 개를 만들 수 있는지 검증하는 문제이다.
-
count는 text의 문자들을 계산할 변수로, 영문자 갯수인 26 크기의 정수 배열로 초기화하여 text를 처음부터 끝까지 문자 갯수를 계산해 넣어준다.
-
result는 결과를 저장할 변수로, b 문자의 갯수인 count[1]을 넣고 아래 규칙에 따라 만들 수 있는 “balloon” 문자열의 갯수를 주어진 문제의 결과로 반환한다.
- result에 result와 a 문자의 갯수인 count[0] 중 작은 값을 넣어준다.
- result에 result와 l 문자의 갯수인 count[11]를 두 번 들어가므로 2로 나눈 값 중 작은 값을 넣어준다.
- result에 result와 o 문자의 갯수인 count[14]를 두 번 들어가므로 2로 나눈 값 중 작은 값을 넣어준다.
- result에 result와 n 문자의 갯수인 count[0] 중 작은 값을 넣어준다.
소스
Sample Code는 여기에서 확인 가능합니다.
댓글남기기