[프로그래머스] 230729 코딩테스트 연습

    SMALL

    1. 배열의 원소 삭제하기

    function solution(arr, delete_list) {
        var answer = [];
        
        // ** arr와 delete_list의 중복 값(교집합) 찾기
        const overlap = arr.filter( i => delete_list.includes(i));
        
        // arr와 overlap의 중복 값을 제외한 배열 생성 
        answer = arr.filter ( i => !(overlap.includes(i)));
        
        return answer;
    }

     

    2. 부분 문자열인지 확인하기

    function solution(my_string, target) {
        var answer = 0;
        let substr = [];
        
        // 부분 문자열 배열 생성
        for (let i=0; i<my_string.length; i++) {
            for (let j=i; j<my_string.length; j++) {
                substr.push(my_string.slice(i, j+1));
            }
        }
        
        // 부분 문자열인지 여부 판단하기
        if (substr.includes(target)) answer = 1;
        
        return answer;
    }

     

    3. 부분 문자열

    function solution(str1, str2) {
        var answer = 0;
        
        if(str2.includes(str1)) answer = 1;
        
        return answer;
    }

     

    4. 꼬리 문자열

    function solution(str_list, ex) {
        var answer = '';
    
        answer = str_list.filter ( i => !(i.includes(ex))).join('');
        
        return answer;
    }

     

    5. 정수 찾기

    function solution(num_list, n) {
        var answer = 0;
        
        if (num_list.includes(n)) answer = 1;
        
        return answer;
    }

     

    6. 주사위 게임 1

    function solution(a, b) {
        var answer = 0;
        
        if (a%2==1) { // 홀수
            if (b%2==1) {
                answer = a*a + b*b;
            } else {
                answer = 2*(a+b)
            }
        } else { // 짝수
            if (b%2==1) {
                answer = 2*(a+b)
            } else {
                answer = Math.sqrt(Math.pow(a-b, 2));
                // |a-b| ==> (a-b}^2의 제곱근으로 구함
                // ** Math.abs > 절댓값 구하기
            }
        }
        
        return answer;
    }

     

    7. 날짜 비교하기

    function solution(date1, date2) {
        var answer = 0;
        
        // 날짜 비교 시, Date 함수 사용
        const newDate1 = new Date(date1);
        const newDate2 = new Date(date2);
        
        if (newDate1 < newDate2) answer = 1;
        
        return answer;
    }
    728x90

    댓글