길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
n은 길이 10,000이하인 자연수입니다.
n return 3 "수박수" 4 "수박수박"
class Solution {
public String solution(int n) {
String answer = "";
int evenCnt = 0;
int oddCnt = 0;
if(n%2 == 0) {
evenCnt = n/2;
} else {
evenCnt = n/2;
oddCnt = 1;
}
for(int i = 0; i < evenCnt; i++) {
answer += "수박";
}
if(oddCnt == 1) answer += "수";
return answer;
}
}
class Solution {
public String solution(int n) {
String answer = "";
answer = new String(new char[(n/2)+1]).replace("\0", "수박").substring(0, n);
return answer;
}
}
char 배열을 String 생성자 내에 선언하면 String 객체로 반환한다.
char 형 배열의 사이즈만 지정하는 경우 null 문자를 나타내는 "\n"으로 초기화된다.
배열의 사이즈르 (n/2)+1 로 지정한 이유는 n이 1인경우 배열의 길이가 0이 되기 때문이다.
사실 배열의 사이즈를 n으로 두어도 substring으로 자르기 때문에 상관은 없지만, 최소한의 배열을 만들기 위해서 2로 나누고 각 "\n"을 "수박"으로 replace 하는 것.