단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
s는 길이가 1 이상, 100이하인 스트링입니다.
s		return
"abcde"	"c"
"qwer"	"we"삼항연산자의 성질을 이용해 문자열 길이에 따라 반환값을 달리 설정해주었다.
function solution(s) {
    return s.length % 2 ? s[parseInt(s.length/2)] : s[s.length/2-1] + s[s.length/2];
}substring 메서드를 이용해 특정 index로 부터 몇 개를 빼올지 정할 수 있다.
function solution(s) {
    return s.substr(Math.ceil(s.length / 2) - 1, s.length % 2 === 0 ? 2 : 1);
}길이가 n이고, "수박수박수박수...."와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 "수박수박"을 리턴하고 3이라면 "수박수"를 리턴하면 됩니다.
n은 길이 10,000이하인 자연수입니다.
n	return
3	"수박수"
4	"수박수박"처음은 반복문을 이용해 정석대로 풀어보았다.
function solution(n) {
  var answer = '';
    for(let i=1;i<=n;i++){
        if(i%2 === 1){
             answer+="수"
        }else{
             answer+="박"
        }    
    }
    return answer;
} 다음은 규칙을 찾아서 이를 이용해 풀어보았다.
function solution(n) {
   return n % 2 ? "수박".repeat((n-1)/2) + "수" : "수박".repeat(n/2);
}길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.
이때, a와 b의 내적은 a[0]b[0] + a[1]b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이)
a, b의 길이는 1 이상 1,000 이하입니다.
a, b의 모든 수는 -1,000 이상 1,000 이하입니다.
a	b	result
[1,2,3,4]	[-3,-1,0,2]	3
[-1,0,1]	[1,0,-1]	-2재귀를 이용해 풀어주었다. (굳이 재귀를 쓸 필요는 없지만 연습용으로!)
시간이 오래 걸리기 때문에 단순 반복문을 사용하는게 효율적이다.
function solution(a, b) {
    if(a.length === 0) return 0;
    return a[0] * b[0] + solution(a.slice(1), b.slice(1));
}function solution(a, b) {
    var sum = 0;
    for(var i=0; i<a.length; i++){
        sum += a[i]*b[i];
    }
    return sum;
}function solution(a, b) {
    return a.reduce((acc, _, i) => acc += a[i] * b[i], 0);
}  
문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요.
s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다.
str은 길이 1 이상인 문자열입니다.
s			return
"Zbcdefg"	"gfedcbZ"sort( )는 배열에 있는 문자들을 오름차순으로 정렬해주는 메서드이다.
내림차순으로 정렬하려면 오름차순으로 정렬한뒤 뒤집어 주면 되므로, sort()하고 reverse()를 해주면 된다.
function solution(s) {
    return s.split('').sort().reverse().join('');
}