Lv.1 수박수박수박수박수박수?

서현우·2022년 4월 29일
0

알고리즘 풀이

목록 보기
20/31

문제 설명

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

제한 조건

n은 길이 10,000이하인 자연수입니다.

초기코드

class Solution {
    public String solution(int n) {
        String answer = "";
        return answer;
    }
}

내 풀이

///반복문으로 "수" 또는 "박"을 answer에 저장

class Solution {
    public String solution(int n) {
        String answer = "";
        int i=0;
        while(i<n) {
        	if(i%2==0)
        		answer+="수";
        	else
        		answer+="박";
        	i++;
        }
        return answer;
    }
}

다른 풀이1

//boolean flag를 선언해서
//반복문으로 flag가 true면 "수" false면 "박"을
//String result에 더해나감.
//flag=!flag

class Solution {
    public String solution(int n) {
     boolean flag = true;
    String result = "";
        while(n-- > 0){

      result += flag ? "수":"박";
      flag = !flag;
    }
        return result;
    }
}

다른 풀이2

//StringBuffer를 사용해서 
//반복문으로 append로 "수" 또는 "박을" 추가
//toString()을 리턴

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();
    }
}
``
        
profile
안녕하세요!!

0개의 댓글