Javadocs

[Programmers] 중복된 문자 제거 (Java) 본문

SelfStudy/Programmers(코딩테스트)

[Programmers] 중복된 문자 제거 (Java)

Javatist 2023. 4. 19. 22:32

https://school.programmers.co.kr/learn/courses/30/lessons/120888

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

[ 문제 설명 ]
문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.
[ 제한사항 ]

  • 1 ≤ my_string ≤ 110
  • my_string은 대문자, 소문자, 공백으로 구성되어 있습니다.
  • 대문자와 소문자를 구분합니다.
  • 공백(" ")도 하나의 문자로 구분합니다.
  • 중복된 문자 중 가장 앞에 있는 문자를 남깁니다.

[ 입출력 예 ]

my_stringresult
"people""peol"
"We are the world""We arthwold"

[ 입출력 예 설명 ]
입출력 예 # 1

  • "people"에서 중복된 문자 "p"와 "e"을 제거한 "peol"을 return합니다

입출력 예 # 2

  • "We are the world"에서 중복된 문자 "e", " ", "r"들을 제거한 "We arthwold"을 return합니다.

[ 풀이 ]

public class Duplication {

	public static String solution(String my_string) {
        String answer = "";
        
        for(int i = 0; i < my_string.length(); i++) {
        	// 주어진 문자열 my_string을 한 글자씩 비교하기 위해 my_string.charAt(i) 사용
        	// 인덱스 i번째 글자의 인덱스 위치 파악(indexOf 사용)
        	// 그 위치가 i와 같은지 비교.
        	if(my_string.indexOf(my_string.charAt(i)) == i) {
        		answer += my_string.charAt(i);
        	}
        }
        
        return answer;
    }
	public static void main(String[] args) {
		String my_string = "people";
		System.out.println(solution(my_string));
	}
}
Comments