
# 문제 출제 사이트
https://programmers.co.kr/learn/courses/30/lessons/12922
코딩테스트 연습 - 수박수박수박수박수박수?
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다. 제한
programmers.co.kr
# 문제 설명
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요.
예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
# 제한 조건
- n은 길이 10,000이하인 자연수입니다.
# 입출력 예

# 제출한 소스코드
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Solution { | |
public String solution(int n) { | |
// 입력: 문자의 길이를 정하는 정수형 n | |
// 목표: 입력된 n 값 길이 만큼의 "수박수박수박....."와 같은 패턴을 유지하는 문자열 리턴 | |
// ex) n이 4이면 "수박수박" 리턴 | |
String answer = ""; | |
String su = "수"; | |
String bak = "박"; | |
// StringBuffer를 활용해 수와 박의 문자를 append(추가) 해준다. | |
// 해당 인덱스 번호가 홀수면 "수" 를 추가, 짝수면 "박" 을 추가 | |
StringBuffer sb = new StringBuffer(); | |
for (int i = 0; i < n; i++) { | |
if( (i + 1) % 2 == 1) { | |
sb.append(su); | |
} else { | |
sb.append(bak); | |
} | |
} | |
// StringBuffer 형식 toString() 함수를 사용해 문자열로 변환 | |
answer = sb.toString(); | |
return answer; | |
} | |
} |
- StringBuffer, String, StringBuilder 각각의 차이점 => 링크
반응형