[Java] 프로그래머스 - 수박수박수박수박수박수?

less than 1 minute read

프로그래머스 - 수박수박수박수박수박수?

연습문제 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