🦄 온보딩 스터디 2주차 1일 TIL
✨03/13 : 목표 : 알고리즘 1일차, 2일차, 3일차 풀이
📒알고리즘 풀이
1. 제곱수 판별하기
어떤 자연수를 제곱했을 때 나오는 정수를 제곱수라고 합니다. 정수 n이 매개변수로 주어질 때, n이 제곱수라면 1을 아니라면 2를 return하도록 solution 함수를 완성해주세요.
- Math.sqrt(n) = > n의 제곱근을 반환한다.
- Number.isInteger(a) = > 정수인지 확인하여 true false를 반환한다.
문제 접근)
1. n의 제곱근을 구하여 a에 할당한다.
2. a가 정수인지 검사하여 1 또는 2를 반환한다. => a가 정수로 떨어지면 제곱수이고, 소수 등 정수로 떨어지지 않을 경우 제곱수가 아니기 때문에
function solution(n) {
// 1. 제곱근 구하기
const a = Math.sqrt(n)
// 2. 제곱근이 정수면 1 아니면 2
return Number.isInteger(a) ? 1 :2
}
2. 특정 문자 제거하기
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
- replaceAll(문자열, 대체문자) => replace는 해당 문자열 한 개만 제거하지만 replaceAll은 해당 문자열
문제 접근)
1. my_string에서 특정 문자 letter를 제거하기 위해 replace를 사용 => 첫번째 요소만 제거 가능하여 모든 문자를 제거하지 못함
2. 모든 letter 문자열을 제거하기 위해 => repalce가 아닌 replaceAll을 사용하여 중복되는 문자열 모두 제거
function solution(my_string, letter) {
return my_string.replaceAll(letter, "");
}
3. 문자 반복 출력하기
문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string에 들어있는 각 문자를 n만큼 반복한 문자열을 return 하도록 solution 함수를 완성해보세요.
문제 접근)
1. 각 문자열을 순회
2. 순회 시 문자열의[i]번째를 *n번 반복한 문자열을 newString에 추가하기
3. 전부 추가된 문자 반환
function solution(my_string, n) {
let newString = ""
for(let i= 0; i < my_string.length; i++){
newString += my_string[i].repeat(n)
}
return newString;
}
4. 모음 제거
영어에선 a, e, i, o, u 다섯 가지 알파벳을 모음으로 분류합니다. 문자열 my_string이 매개변수로 주어질 때 모음을 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
접근 방법)
my_string 문자열을 순회하면서 모음의 요소와 일치할 경우 replaceAll로 삭제 시킨 값을 newString에 업데이트 한다.
1. 모음 배열 생성 => ["a", "e", "i", "o", "u"]
2. 이중 for문 => my_string을 순회하여 각 문자열이 모음의 요소와 일치할 경우 replaceAll로 해당 문자 삭제 시키기
3. newString을 삭제된 문자열로 계속해서 업데이트 => 다시 newString에서 삭제 반복
function solution(my_string) {
// 1. 모음 배열 생성
const moum = ["a", "e", "i", "o", "u"];
let newString = my_string;
//2. my_string의 문자열을 순회하면서
for (let a of my_string) {
//3. 모음의 요소와 일치하면 replaceAll 하여 삭제 시키기
for (let b of moum) {
if (a === b) {
//4. newString 값을 삭제된 값으로 계속해서 업데이트
newString = newString.replaceAll(b, "");
}
}
}
return newString;
}
5. 문자열 안에 문자열
문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요.
- string.includes(문자열) => string 안에 해당 문자열이 있는지 검사 후 true/false 반환
접근 방법)
str1에 str2가 있는지 검사하는 .includes() 메소드로 true/false에 따라 1과 2반환
'항해99 > 온보딩 스터디' 카테고리의 다른 글
[항해99] 온보딩 스터디 - 2주차 3일 TIL (0) | 2023.03.16 |
---|---|
[항해99] 온보딩 스터디 - 2주차 2일 TIL (0) | 2023.03.15 |
[항해99] 온보딩 스터디 - 6일차 TIL (0) | 2023.03.12 |
[항해99] 온보딩 스터디 - 5일차 TIL (0) | 2023.03.11 |
[항해99] 온보딩 스터디 - 4일차 TIL (1) | 2023.03.10 |