ALGORITHM

[JAVA] [프로그래머스] Level 1 - 연습문제 - 수박수박수박수박수박수?

printf100 2020. 9. 1. 21:14

https://programmers.co.kr/learn/courses/30/lessons/12922

 

코딩테스트 연습 - 수박수박수박수박수박수?

길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조��

programmers.co.kr

 

 

class Solution {
    public String solution(int n) {
        String answer = "";
        
        String s = "수박";
        
        if(n == 1)
            answer = "수";
        
        for(int i=0; i<n/2; i++) {
            answer += s;
                       
            if(n % 2 != 0 & i == n/2 - 1) {
                answer += "수";
            }
        }
        
        return answer;
    }
}

 

 

다른 사람 풀이

class Solution {
    public String solution(int n) {
        // 빈 char 배열이 생성되면 \0 으로 생성됨
        return new String(new char[n/2 + 1]).replace("\0", "수박").substring(0, n);
    }
}

 

class Solution {
    public String solution(int n) {
        
        StringBuffer sf = new StringBuffer();
        
        for (int i=1; i<=n; ++i) {
            sf.append(i % 2 == 1 ? "수" : "박");
        
        }
        
        return sf.toString();
    }
}