문제 설명
길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요.
예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
제한사항
- n은 길이 10,000이하인 자연수입니다.
입출력 예
| n | return |
| 3 | "수박수" |
| 4 | "수박수박" |
⭕ 풀이
class Solution {
public String solution(int n) {
StringBuilder sb = new StringBuilder();
for(int i=0;i<n/2;i++) {
sb.append("수박");
}
return n%2==0?sb.toString():sb.append("수").toString();
}
}
✅ 흐름
입력받은 정수를 2로나눈뒤 반복문으로 "수박"을 StringBuilder에 더하고
마지막 return 하기전에 n이 홀수였다면 "수"를 더해 반환하도록 만들었다.
⭕ 다른분의 풀이
for (int i = 0; i < n; i++){
result += i % 2 == 0 ? "수" : "박";
}
return result;
입력받은 n을 그대로 사용하면서 for문 안에서 홀,짝을 구분지어 result에 더하는식의
다른분의 풀이를 보았는데 훨씬 깔끔해보여서 가져왔다.
-출처
https://school.programmers.co.kr/learn/courses/30/lessons/12922
'Algorithm > Programmers(Java)' 카테고리의 다른 글
| [프로그래머스/Lv.1] 문자열 내림차순으로 배치하기 (0) | 2022.12.20 |
|---|---|
| [프로그래머스/Lv.1] 내적 (0) | 2022.12.20 |
| [프로그래머스/Lv.1] 가운데 글자 가져오기 (0) | 2022.12.16 |
| [프로그래머스/Lv.1] 없는 숫자 더하기 (0) | 2022.12.15 |
| [프로그래머스/Lv.1] 음양 더하기 (0) | 2022.12.15 |