[프로그래머스] 문자 반복 출력하기
문제
문제설명
문자열 my_string
과 정수 n
이 매개변수로 주어질 때, my_string
에 들어있는 각 문자를 n
만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.
제한 사항
- 2 ≤
my_string
길이 ≤ 5 - 2 ≤
n
≤ 10 - “my_string”은 영어 대소문자로 이루어져 있습니다.
입출력 예
my_string | n | result |
---|---|---|
“hello” | 3 | “hhheeellllllooo” |
입출력 예 설명
입출력 예 #1
- “hello”의 각 문자를 세 번씩 반복한 “hhheeellllllooo”를 return 합니다.
풀이
풀이 방식
- 각 문자열마다
append
로 문자를 추가할 수 있게StringBuilder
를 사용한다. - 각 문자열을 사용할 수 있게 반복문을 사용한다.
- 각 문자열을
n
번 만큼 반복하여append
한다.
제출 코드
1
2
3
4
5
6
7
8
9
10
11
import java.util.*;
class Solution {
public String solution(String my_string, int n) {
StringBuilder answer = new StringBuilder();
for (int i = 0; i < my_string.length(); i++){
answer.append(Character.toString(my_string.charAt(i)).repeat(n));
}
return answer.toString();
}
}
다른 사람 풀이
- 뭔가 내 풀이가 복잡해 보여서 참고해 볼 만한 코드를 찾아봤다.
1
2
3
4
5
6
7
8
9
class Solution {
public String solution(String my_string, int n) {
StringBuilder sb = new StringBuilder();
for(char c : my_string.toCharArray()){
sb.append((c + "").repeat(n));
}
return sb.toString();
}
}
- 향상된 for문을 사용하였고 문자열을 char형 배열로 바꿔서 반환하는 메서드인
toCharArray()
를 사용하였다. - 각 문자를
c + ""
로 문자열로 다시 반환하여repeat()
을 사용해 n번만큼 문자열에 추가해 주었다. - 이 코드를 참고하면서
toCharArray
와ch + ""
도 활용해 봐야겠다는 생각이 들었다.
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.