팩토리얼
💡 `i`팩토리얼 (i!)은 1부터 i까지 정수의 곱을 의미합니다. 예를들어 5! = 5 * 4 * 3 * 2 * 1 = 120 입니다. 정수 n이 주어질 때 다음 조건을 만족하는 가장 큰 정수 i를 return 하도록 solution 함수를 완성해주세요.
function solution(n) {
var answer = 0;
var result=1;
for(i=1;i<=n;i++){
result=result*i;
if(result<=n){
answer=i;
}
}
return answer;
}
k의 개수
💡 1부터 13까지의 수에서, 1은 1, 10, 11, 12, 13 이렇게 총 6번 등장합니다. 정수 `i`, `j`, `k`가 매개변수로 주어질 때, `i`부터 `j`까지 `k`가 몇 번 등장하는지 return 하도록 solution 함수를 완성해주세요.
function solution(i, j, k) {
var answer = 0;
k=k.toString();
for(var a=i;a<=j;a++){
answer+=(a.toString().split(k).length-1);
}
return answer;
}
가까운 수
💡 정수 배열 `array`와 정수 `n`이 매개변수로 주어질 때, `array`에 들어있는 정수 중 `n`과 가장 가까운 수를 return 하도록 solution 함수를 완성해주세요.
function solution(array, n) {
var answer = 0;
var min=100;
array=array.sort();
for (var i=0;i<array.length;i++){
if(min>Math.abs(array[i]-n)){
min=Math.abs(array[i]-n);
answer=array[i];
}
}
return answer;
}
잘라서 배열로 저장하기
💡 문자열 `my_str`과 `n`이 매개변수로 주어질 때, `my_str`을 길이 `n`씩 잘라서 저장한 배열을 return하도록 solution 함수를 완성해주세요.
function solution(my_str, n) {
var answer = [];
var times=(my_str.length/n)+1;
if((my_str.length%n)==0)times=times-1;
var i=0;
var count=0;
for(var a=0;a<times;a++){
if(a==(times-1)){ //왜 배열 마지막 원소에 ''가 생길까?
answer.push(my_str.substr(i)); // 예시 "hello"
}
else {
answer.push(my_str.substr(i,n));
i=i+n;
}
if(answer[answer.length-1]=='') answer.pop();
}
return answer;
}
한 번만 등장한 문자
💡 문자열 `s`가 매개변수로 주어집니다. `s`에서 한 번만 등장하는 문자를 사전 순으로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요. 한 번만 등장하는 문자가 없을 경우 빈 문자열을 return 합니다.
function solution(s) {
var answer = '';
for(var i=0;i<s.length;i++){
if(s.split(s[i]).length==2)
answer+=s[i];
}
return answer.split("").sort().join("");
}