728x90

https://codingdojang.com/scode/465?answer_mode=hide 

 

코딩도장

프로그래밍 문제풀이를 통해서 코딩 실력을 수련

codingdojang.com

 

문자열 압축하기

 

  • 문자열을 입력받아 같은 문자가 연속으로반복되는 경우 그 반복횟수를 표시하여 문자열을 압축하기
String zip = "aaabbccccccd";
char[] zipArray = zip.toCharArray();
		
String result = String.valueOf(zipArray[0]);			//a부터 시작

int number = 1;
		
for (int i = 0; i < zipArray.length - 1; i++) {
	if(zipArray[i] == zipArray[i + 1]) {			//다음으로 오는 문자와 중복될 경우
		number++;
	} else {
		result += String.valueOf(number);		//반복횟수 추가
		result += String.valueOf(zipArray[i + 1]);	//중복되지 않은 다음문자 추가
		number = 1;
	}
	if (i == zipArray.length - 2) {				//if (i + 1 == zipArray.length - 1)
		result += number;				//마지막 문자에도 횟수 표시하기
	}
}
System.out.println(result);

[실행결과]

a3b2c6d1

'코딩도장' 카테고리의 다른 글

Spiral Array  (0) 2021.07.13
CamelCase를 Pothole_case 로 바꾸기!  (0) 2021.07.13
모스부호 해독  (0) 2021.07.13

+ Recent posts