CS/Algorithm

    [Algorithm-JS] 프로그래머스 코테 Lv2 - 기능개발(array)

    ✔️ 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42586?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr✔️ 문제요약배포되어야 하는 작업들이 순서대로 담긴 배열 progresses가 존재하며 각 작업의 값은 배포된 정도를 의미한다. 매일 수행할 수 있는 작업의 속도가 담긴 배열 speeds도 존재한다. 각 작업들은 배포 순서가 존재하기 때문에 먼저 100% 배포 준비가 됐더라도 앞선 작업이 배포 준비가 되지 않는다면 배포가 불가능하다. 배포가 가능한 날에 ..

    [Algorithm-JS] 프로그래머스 코테 Lv2 - 의상(hashMap)

    ✔️ 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42578?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr✔️ 문제요약[의상의 이름, 의상의 종류]로 이루어진 2차원 배열 clothes가 존재하며, 코니는 하루에 최소 한가지의 옷은 입어야 한다. 단, 같은 종류의 옷은 여러벌 입을 수 없다. 코니가 입을 수 있는 옷의 조합의 수를 반환해라.🔴 제한사항clothes의 각 행은 [의상의 이름, 의상의 종류]로 이루어져 있다.코니가 가진 의상의 수는 1개 이상 ..

    [Algorithm-JS] 프로그래머스 코테 Lv2 - 전화번호 목록(some, indexOf, startsWith)

    ✔️ 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42577?language=javascript 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr✔️ 문제요약전화번호가 나열된 배열 phone_book이 있고, 특정 전화번호가 다른 전화번호의 접두어에 위치하는 경우가 있다면 false를 반환, 없다면 true를 반환🔴 제한사항phone_book의 길이는 1 이상 1,000,000 이하이다.각 전화번호의 길이는 1 이상 20 이하이다.같은 전화번호가 중복해서 들어있지 않다.🚩 접근법해시 문제라고 ..

    [Algorithm-JS] 프로그래머스 코테 Lv1 - 완주하지 못한 선수(hashMap)

    ✔️ 문제링크https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr✔️ 문제요약n명의 선수가 마라톤을 뛰고 n-1명의 선수가 완주를 한다. 완주를 하지 못한 선수의 이름을 반환하여라.입력 : 선수들의 이름이 문자열로 들어간 배열 participant, 완주한 선수의 이름이 들어간 배열인 completion🔴 제한사항1명 이상 100,000명 이하참가자 중에는 동명이인이 있을 수 있다.🚩 접근법1. 시간 제한이 없었기 때문에 10만명의 participa..

    [알고리즘] 브루트 포스(brute force) - 완전(전체) 탐색

    완전 탐색이란 가능한 모든 경우의 수를 모두 탐색하며 조건에 충족되는 결과만 가져오는 기법이다. ✔️ 브루트 포스 장점알고리즘을 설계하고 구현하기가 쉽다.모든 범위를 다 탐색하기 때문에 무조건 정답을 찾을 수 있다.복잡한 알고리즘 없이 빠르게 구현이 가능하다.✔️ 브루트 포스 단점인력값이 커질 경우, 알고리즘의 실행 시간은 매우 오래 걸릴 수 있다.메모리의 효율면에서 매우 비효율적이다.✔️ 브루트 포스 종류선형 구조 : 순차 탐색비선형 구조 : 백트랙킹, DFS, BFS✔️ 브루트 포스 예시 문제아래와 같은 숫자배열이 존재할 때, 숫자의 각자릿수의 합이 가장 큰 수를 출력하는 문제가 있다고 하자.(단, 각 자릿수의 합이 같다면, 기존 숫자가 더 큰 값을 출력 -> 345, 543이라면 543을 출력)le..