
//입력(str1, str2)
"aaaaa", "bbbbb"
//출력
"ababababab"
function solution(str1, str2) {
let string = '';
for(var i=0; i<str1.length; i++){
string += str1[i] + str2[i];
}
return string;
}
- 빈 문자열을 만들고, 문자열의 길이만큼 반복한다.
- 빈 문자열에 str1와 str2의 문자열의 각 인덱스의 문자를 더해서 저장한다.
//입력
["a","b","c"]
//출력
"abc"
function solution(arr) {
return arr.join('');
}
- 배열을 문자로 이어 붙혀주는 join('')함수를 이용했다.
//입력(my_string, k)
"string", 3
//출력
stringstringstring
function solution(my_string, k) {
return my_string.repeat(k);
}
- repeat(count)는 앞서오는 문자열을 count만큼 반복해 붙여 반환한다.
Ex) a⊕b는 12 ⊕ 6 = 126이다.(⊕는 배타적 논리합이다.)
//입력(a, b)
9, 91
//출력
991
function solution(a, b) {
return Math.max(Number(`${a}${b}`), Number(`${b}${a}`))
}
- Math.max() 는 괄호안에 들어가는 가장 큰값을 반환한다. 즉 A>B일때, Math.max(A,B)이면 A를 반환한다.
- ${} 는 [표현식 삽입] 이라고 하는데, 변수나 연산 등을 수행하여 넣을 수 있다.
- Number() 함수를 사용하여 표현식 삽입으로 반환된 문자열을 숫자로 바꿔준다.
만약 두 연산이 같은 값이라면, a⊕b를 출력한다.
//입력(a, b)
2, 91
//출력
// a⊕b = 291, 2*a*b = 364
364
function solution(a, b) {
let num1 = Number(`${a}${b}`);
let num2 = 2*a*b;
return (num1 >= num2 ? num1 : num2);
}
- 위에서 사용했던 표현식 삽입을 사용하여 num1에 a⊕b를 수행한 결과를 저장한다.
- num2에 2 x a x b를 연산한 결과를 저장한다.
- 3항 연산자를 사용해 num1과 num2를 비교하여 출력한다.