문제 설명
길이가 n이고, "수박수박수박수…"와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
제한사항
- n은 길이 10,000이하인 자연수입니다.
입출력 예
n | return |
3 | "수박수" |
4 | "수박수박" |
class Solution {
public String solution(int n) {
String wm = "수박";
String answer = "";
if (n % 2 == 0) {
answer = wm.repeat(n / 2);
} else {
answer = wm.repeat(n / 2) + "수";
}
return answer;
}
}
문자열 wm을 생성합니다. "수박"이라는 글자를 할당합니다. if문을 활용하여 n이 짝수일 때와 홀수일 때를 구분하여 answer에 할당합니다. repeat 메소드는 문자열을 반복합니다. 괄호에는 반복할 횟수를 입력하는데, 이 문제는 n과 문자열의 길이가 동일해야 합니다. 우리가 반복해야 할 문자열의 길이는 2이므로 n을 2로 나눠줍니다. 만약 홀수일 경우, 여기에 "수"를 더해줍니다. 문자열끼리의 덧셈은 자동으로 문자(열)끼리 붙여주므로 별도의 과정은 거치지 않았습니다. 조금 더 멋있게 풀고 싶다면 "수"라는 문자를 직접적으로 작성하지 않고, wm.charAt(0)으로 간접적으로 문자를 가져와도 무방합니다.
문자 하나씩 반복하는 풀이
[프로그래머스 코딩테스트] 문자 반복 출력하기(Java) https://sigfriede.tistory.com/33
'프로그래머스 > Lv. 1' 카테고리의 다른 글
[프로그래머스 코딩테스트] 제일 작은 수 제거하기(Java) (0) | 2023.05.22 |
---|---|
[프로그래머스 코딩테스트] 행렬의 덧셈(Java) (0) | 2023.04.24 |
[프로그래머스 코딩테스트] 소수 찾기(Java) (2) | 2023.04.16 |
[프로그래머스 코딩테스트] 2016년(Java) (0) | 2023.04.15 |
[프로그래머스 코딩테스트] 폰켓몬(Java) (0) | 2023.04.13 |