Programmers[자바].140108 문자열 나누기 (코드첨부)

2023. 8. 13. 13:34·문제 풀이/Programmers
728x90
반응형
SMALL
📌코드를 풀면서 주의해야 할 점
☀️기준이 되는 값은 하나다
☀️기준과 다른 수는 각각 문자별로 개수를 세는게 아니라 다른 수 하나로 지정하여 카운트한다.
☀️예를들어 기준이 a이고 bcde가 있으면 a=1, bcde=4로 카운트하여 비교하는 것
import java.util.*;

class Solution {
    public int solution(String s) {
      int len = s.length();
	int answer=0;
	int otherCnt=0;
	
	Map<String, Integer> map = new HashMap<String, Integer>();
	for(int i=0; i<len;i++) {
		String x = s.charAt(0)+"";
		
		if(i==0 || x.equals(s.charAt(i)+"")) {
			map.put(x, map.getOrDefault(x, 0)+1);
			continue;
		}
		else otherCnt++;
		
		
		//2. 다른 글자가 나오면 똑같이 put하고 x와 비교
		if(map.get(x) == otherCnt){
			s= s.substring(i+1);
			len = s.length();
			answer++;
			i=-1;
			map = new HashMap<String, Integer>();
			otherCnt =0;
		}
		//인덱스의 마지막까지 가서도 횟수가 모두 다르고 더 이상 읽을 글자가 없다면 분리하고 종료
	}
	
	if(!map.isEmpty()) answer++;
        return answer;
    }
}

728x90
반응형
SMALL

'문제 풀이 > Programmers' 카테고리의 다른 글

133027. 주문량이 주문량이 많은 아이스크림들 조회하기  (149) 2023.08.13
[자바]120875. 프로그래머스 평행 코드 첨부  (5) 2023.08.12
[자바]120956 프로그래머스 옹알이 문제 코드 첨부  (1) 2023.08.12
프로그래머스42889. 실패율 자바  (0) 2023.08.09
120875. 평행 (자바) 문제에 함정이 있습니다 꼭 읽어보세요!  (0) 2023.08.06
'문제 풀이/Programmers' 카테고리의 다른 글
  • 133027. 주문량이 주문량이 많은 아이스크림들 조회하기
  • [자바]120875. 프로그래머스 평행 코드 첨부
  • [자바]120956 프로그래머스 옹알이 문제 코드 첨부
  • 프로그래머스42889. 실패율 자바
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
IT - railroadIT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (314) N
      • 면접 준비 (36) N
        • OS (6)
        • Spring Security (0)
        • Java (2) N
        • DB (9)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      spring redis
      redis
      java
      JS
      스프링프레임워크
      자바
      jsp기초
      자바 알고리즘
      자바기초
      HTML
      Spring
      리눅스마스터2급정리
      jsp request
      프로그래머스
      redis 채팅
      Til
      자바 면접질문
      Springframework
      springsecurity
      리눅스
      CSS
      JavaScript
      백준
      JSP
      자바 면접
      Spring Data Redis
      자바스크립트
      리눅스마스터2급
      레디스
      자바 반복문
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    Programmers[자바].140108 문자열 나누기 (코드첨부)

    개인정보

    • 티스토리 홈
    • 포럼
    • 로그인
    상단으로

    티스토리툴바

    단축키

    내 블로그

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

    블로그 게시글

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

    모든 영역

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

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