[Java] 프로그래머스 - 수박수박수박수박수박수?
프로그래머스 - 수박수박수박수박수박수?
연습문제 level 1
링크: https://programmers.co.kr/learn/courses/30/lessons/12922
문제 설명
길이가 n이고, 수박수박수박수….와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요.
예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다.
제한 조건
- n은 길이 10,000이하인 자연수입니다.
코드
class Solution {
public String solution(int n) {
String answer = "";
for(int i = 1; i <= n; i++) {
if(i % 2 == 0) // 짝수인 경우
answer += "박";
else // 홀수인 경우
answer += "수";
}
return answer;
}
}
다른 사람 풀이(1)
public String watermelon(int n){
return new String(new char [n/2+1]).replace("\0", "수박").substring(0,n);
}
- substring: 0번째 문자열부터 n번째 전까지 자르는 함수
- replace(““\0”, “수박”): 빈 char 배열이 생성되면 ‘\0’으로 먼저 생성되므로 사용
다른 사람 풀이(2)
public class WaterMelon {
public String watermelon(int n){
String result = "";
for (int i = 0; i < n; i++)
result += i % 2 == 0 ? "수" : "박";
return result;
}
}
- 삼항연산자 사용
Leave a comment