아직도 문제를 보면 어떻게 풀어나가야될지 잘 모르겠땨ㅎㅎ..
다시 헤딩해보쟈
q1.
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
나는 split('letter') 사용하면 될 줄 알았는데, 먹히지 않더라
여기서 알아야되는 메서드가 replaceAll 이라는 건데, 문자 그대로 바꿔주는 메서드이다.
function solution(my_string, letter) {
return my_string.replaceAll(letter, "");
}
replace의 경우에는 첫번째 하나만 바꾸기 때문에 replaceAll 로 사용하여야된다.
q2.
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.
정수 판별하는 메서드 Number.isInteger(), 제곱근을 나타내는 메서드 Math.sqrt()를 활용해야된다.
function solution(n) {
if(Number.isInteger(Math.sqrt(n))){
return 1;
} else {
return 2;
}
}
q3.
자연수 n을 뒤집어 각 자리 숫자를 원소로 가지는 배열 형태로 리턴해주세요. 예를들어 n이 12345이면 [5,4,3,2,1]을 리턴합니다.
function solution(n) {
return n.toString().split("").reverse().map((item) => parseInt(item) )
}
자연수를 n으로 받는거라 string으로, 하나씩 쪼개서 다시 배열로 담아 숫자로 반환하는 과정을 거쳐야된다.
q4.
머쓱이네 피자가게는 피자를 일곱 조각으로 잘라 줍니다. 피자를 나눠먹을 사람의 수 n이 주어질 때, 모든 사람이 피자를 한 조각 이상 먹기 위해 필요한 피자의 수를 return 하는 solution 함수를 완성해보세요.
논리적인 사고? 가 필요한 문제인 거 같다.
그래서 당연히 못풀었다ㅎ..
function solution(n) {
// 피자를 나눠먹을 사람의 수 n
// 피자는 일곱 조각으로 잘라줌
// 모든 사람이 한 조각 이상 먹고 싶어, 필요한 피자 수 return
return Math.floor((n - 1) / 7) + 1;
}