코딩테스트

[문자열] 6. 중복문자제거

개발하는지호 2023. 12. 1. 00:48
6. 중복문자제거
 

설명

소문자로 된 한개의 문자열이 입력되면 중복된 문자를 제거하고 출력하는 프로그램을 작성하세요.

중복이 제거된 문자열의 각 문자는 원래 문자열의 순서를 유지합니다.

입력

첫 줄에 문자열이 입력됩니다. 문자열의 길이는 100을 넘지 않는다.

출력

첫 줄에 중복문자가 제거된 문자열을 출력합니다.

예시 입력 1 

ksekkset

예시 출력 1

kset

 

 

<<풀이>>

 

이 문제는 String.indexOf() 의 기능을 이용해서 푸는 문제이다. indexOf은 가장 앞에 있는 특정 데이터의 인덱스를 반환한다.

이를 이용해서 풀면 문제가 쉽게 풀린다.

 

import java.util.Scanner;

// Press Shift twice to open the Search Everywhere dialog and type `show whitespaces`,
// then press Enter. You can now see whitespace characters in your code.
public class Main {
    public String solution(String str) {
        String answer = "";
        char[] arr = str.toCharArray();
        for (int i = 0; i < arr.length; i++) {
            if (i == str.indexOf(arr[i])) {
                answer += arr[i];
            }
        }

        return answer;
    }

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

        System.out.println(T.solution(str));

    }
}