[프로그래머스] 세 개의 구분자 - JAVA

2024. 9. 9. 02:24·알고리즘

[작성일: 2023. 10. 26]

 

 

풀이

import java.util.ArrayList;
import java.util.List;
class Solution {
public String[] solution(String myStr) {
List<String> answer = new ArrayList<>();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < myStr.length(); i++) {
if (myStr.charAt(i) == 'a' || myStr.charAt(i) == 'b' || myStr.charAt(i) == 'c') {
if (sb.length() > 0) {
answer.add(sb.toString());
sb.setLength(0);
}
} else {
sb.append(myStr.charAt(i));
}
}
if (sb.length() > 0) {
answer.add(sb.toString());
}
if (answer.isEmpty()) {
answer.add("EMPTY");
}
return answer.stream().toArray(String[]::new);
}
}

 

myStr.charAt(i)가 a, b, c일 경우에는 StringBuilder sb의 길이가 0이 넘는지를 확인한다.

sb의 길이가 0이 넘는다는 것은 a, b, c가 아니었을 경우 myStr.charAt(i)가 저장되었다는 뜻이다. 저장된 문자열을 ArrayList에 추가하고 sb의 길이를 0으로 초기화한다.

 

그리고 for문을 나와서 다시 한 번 sb의 length가 0이 넘는지를 확인해야 하는데 마지막 문자가 a, b, c가 아닐 경우에는 ArrayList에 담기지 않기 때문이다. 또한 answer이 비어있을 경우에는 EMPTY 문자열을 저장해야 한다.

 

저작자표시 비영리 변경금지 (새창열림)
'알고리즘' 카테고리의 다른 글
  • [프로그래머스] 순서쌍의 개수 - JAVA
  • [프로그래머스] 배열의 길이를 2의 거듭제곱으로 만들기 - JAVA
  • [프로그래머스] x 사이의 개수 - JAVA
  • [프로그래머스] 조건에 맞게 수열 반환하기 2 - JAVA
뚜비
뚜비
1년차 백엔드&iOS 개발자의 감자 탈출 블로그 🥔🥔
  • 뚜비
    뚜비의 개발로그
    뚜비
  • 전체
    오늘
    어제
  • 글쓰기     관리
    • Devlog
      • Back-End
        • Java
        • Spring
        • JPA
        • HTTP
        • Security
        • Back-End
        • Front-End
      • 알고리즘
      • iOS
        • Swift
      • Database
      • Tips
        • Git & GitHub
        • A to Z
      • 프로젝트
      • 생각정리
  • 태그

    성능최적화
    다형성
    자바
    Swift
    html
    JPA
    백준
    알고리즘
    자바스크립트
    변수
    의존성주입
    데이터베이스
    스프링
    객체
    DB
    sql
    생성자
    Java
    spring
    최주호
    김영한
    HTTP
    프로그래머스
    javascript
    게시판만들기
    jsp
    Security
    Database
    Spring Security
    MVC
  • hELLO· Designed By정상우.v4.10.0
뚜비
[프로그래머스] 세 개의 구분자 - JAVA
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.