인프런 커뮤니티 질문&답변

australialove19님의 프로필 이미지
australialove19

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

11. 문자열 압축

String.valueOf(cnt)를 하지 않고 cnt만 하면 문제가 생길까요? 그리고 cnt의 위치!

작성

·

255

1

import java.util.Scanner;

public class Main {
	public String solution(String str) {
		String answer = "";
		int cnt = 1 ;
		str += " ";
		for(int i = 0; i < str.length()-1; i++) {
			if(str.charAt(i) == str.charAt(i+1)) cnt++;
			else {
				answer += str.charAt(i);
				if(cnt >= 2) answer += cnt; // 문자열 더하기라 정수형태로 해도 괜찮을 것 같은데 String.valueOf(cnt)를 한 이유가 궁금합니다 !
				cnt = 1; // 이건 if(cnt >=2) 조건에 넣는게 더 효율적이지 않을까 생각드는데 어떻게 생각하시나요? ㅎㅎ
			}
		}
		
		return answer;
	}

	public static void main(String[] args) {
		Main T = new Main();
		Scanner scan = new Scanner(System.in);
		String str = scan.next();
		System.out.println(T.solution(str));
	}
}

답변 1

1

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

1. 그냥 cnt만 해도 상관없습니다.

2. 네. if(cnt>=2) 에 넣어주면 좋겠네요.

australialove19님의 프로필 이미지
australialove19

작성한 질문수

질문하기