| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- 1px border
- 전역변수
- 10px
- Props
- npm
- 0.5px border
- 당근마켓
- ES5
- github
- 컴포넌튼
- 문서번호
- es6
- 클론코딩
- 서버리스 #
- font-size
- 으
- 0.75px border
- ZOOM
- &연산
- Strict
- Websocket
- 타입스크립트
- jwt
- angular
- 데이터베이스 #try #이중
- TypeScript
- entity
- literal
- TS
- 0.25px border
Archives
- Today
- Total
복잡한뇌구조마냥
[코딩테스트 + Java] 문자 반복 출력하기 - 프로그래머스 Lv.0 본문
🔗 문제 링크

🧠 문제 설명
주어진 문자열 my_string의 각 문자를 n번 반복하여 새로운 문자열을 만드는 문제입니다.
예시
입력: my_string = "hello", n = 3
출력: "hhheeellllllooo"
💡 풀이 아이디어
- 문자열을 앞에서부터 순회하면서,
- 각 문자를 n번 반복한 문자열로 바꿔서 이어 붙이면 끝.
✅ 최종 코드
class Solution {
public String solution(String my_string, int n) {
String answer = "";
for (int i = 0; i < my_string.length(); i++) {
char a = my_string.charAt(i);
answer += Character.toString(a).repeat(n);
}
return answer;
}
}
🔍 보완 포인트
- 문자열 덧셈(+=)은 성능상 비효율이므로, 반복이 많아질 경우 StringBuilder가 더 적합함
public String solution(String my_string, int n) {
StringBuilder sb = new StringBuilder();
for (char c : my_string.toCharArray()) {
sb.append(String.valueOf(c).repeat(n));
}
return sb.toString();
}
📌 포인트 정리
- Character.toString(c) 또는 String.valueOf(c)로 char → String 변환
- String.repeat(n)은 Java 11 이상에서 지원되는 기능
- 문자열 덧셈보다는 StringBuilder 사용 권장 (성능 향상)
LIST
'공통 > 알고리즘 및 코테' 카테고리의 다른 글
| [알고리즘] 알고리즘 설계 기법(Algorithm Design Paradigms) (3) | 2025.07.08 |
|---|---|
| [코딩테스트 + Java] 괄호 변환 - 프로그래머스 Lv.2 (3) | 2025.07.08 |
| [코딩테스트 + JAVA] 기능개발 - 프로그래머스 Lv.2 (0) | 2025.07.02 |
| [코딩테스트 + Java] 최빈값구하기 - 프로그래머스 Lv.0 (1) | 2025.06.30 |
| [알고리즘] 완전 탐색 - 부분집합 (0) | 2025.05.18 |