문제 설명
문자열 my_string이 매개변수로 주어집니다. my_string에서 중복된 문자를 제거하고 하나의 문자만 남긴 문자열을 return하도록 solution 함수를 완성해주세요.
제한사항
1 ≤ my_string ≤ 110
my_string은 대문자, 소문자, 공백으로 구성되어 있습니다.
대문자와 소문자를 구분합니다.
공백(" ")도 하나의 문자로 구분합니다.
중복된 문자 중 가장 앞에 있는 문자를 남깁니다.
입출력 예
my_string result
"people" "peol"
"We are the world" "We arthwold"
import java.util.Set;
import java.util.LinkedHashSet;
import java.util.stream.Collectors;
class Solution {
public String solution(String my_string) {
String answer = "";
Set<Character> set = new LinkedHashSet<>();
for(char c : my_string.toCharArray()) {
set.add(c);
}
answer = set.stream()
.map(String::valueOf)
.collect(Collectors.joining());
return answer;
}
}
gpt로 풀었다.
부끄럽지만 오늘 처음으로 Set, LinkedHashSet을 써 봤다.
어려운 문제가 아니었다.
이제 Set 같은 걸 쓰기 시작하는 도입부 정도였다.
처음으로, 추천할 만한 코드를 고르지 못 하겠다.
거의 모든 코드가 한 번 볼 만한 가치를 가지고 있다.
이 문제 자체도, 이 문제 풀이도 추천한다.