문제 설명
알파벳 대소문자로만 이루어진 문자열 my_string이 주어질 때, my_string에서 'A'의 개수, my_string에서 'B'의 개수,..., my_string에서 'Z'의 개수, my_string에서 'a'의 개수, my_string에서 'b'의 개수,..., my_string에서 'z'의 개수를 순서대로 담은 길이 52의 정수 배열을 return 하는 solution 함수를 작성해 주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
풀이
class Solution {
public int[] solution(String my_string) {
int[] answer = new int[52];
char[] charArr = my_string.toCharArray(); // 1
for (char ch : charArr) {
if ('A' <= ch && ch <= 'Z') { // 2
answer[ch - 'A']++;
} else if ('a' <= ch && ch <= 'z') { // 3
answer[ch -'a' + 26]++;
}
}
return answer;
}
}
- 문자열을 문자 배열로 변환
- 배열을 순회하며 대문자인 경우, answer[ch - 'A']++;를 통해 배열 answer에서 해당 알파벳에 대한 카운트 증가
- 배열을 순회하며 소문자인 경우, answer[ch - 'a' + 26]++;를 통해 배열 answer에서 해당 알파벳에 대한 카운트 증가
- 대문자는 0~25인덱스, 소문자는 26~52 인덱스에 저장
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'알고리즘 & 코딩 테스트 > [Java]프로그래머스' 카테고리의 다른 글
| [프로그래머스_Java] Lv.0 문자열 계산하기 (0) | 2024.01.19 |
|---|---|
| [프로그래머스_Java] Lv.0 공 던지기 (0) | 2024.01.19 |
| [프로그래머스_Java] Lv.0 잘라서 배열로 저장하기 (0) | 2024.01.18 |
| [프로그래머스_Java] Lv.0 조건에 맞게 수열 변환하기 2 (0) | 2024.01.09 |
| [프로그래머스_Java] PCCE 모의고사 (0) | 2024.01.09 |