본문 바로가기

반응형

문과 코린이의, [알고리즘] 기록

(3)
[문과 코린이의 IT 기록장] JS(Javascript) 프로그래머스(Programmers) 코딩 테스트 - 로또의 최고 순위와 최저 순위 [문과 코린이의 IT 기록장] JS(Javascript) 프로그래머스(Programmers) 코딩 테스트 - 로또의 최고 순위와 최저 순위 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr [ 풀이 1 ] - for문, if문 사용 function solution(lottos, win_nums) { let gcnt = 0; // 나의 로또번호 = 실제 로또값인 개수 let ocnt = 0; // 나의 로또번호 = 0인 개수 const cnt = Array(2).fi..
[문과 코린이의 IT 기록장] JS(Javascript) 프로그래머스(Programmers) 코딩 테스트 - 신고 결과 받기 [문과 코린이의 IT 기록장] JS(Javascript) 프로그래머스(Programmers) 코딩 테스트 - 신고 결과 받기 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr [ 풀이 1 ] function solution(id_list, report, k) { // report 중복 제거 const set = new Set(report); // 중복값이 있는 배열을 Set객체로 만들어, 중복 제거 후 const newReport = [...set]; // 전개연산자를 통해, 다시 배열로 변환함. (Sp..
[문과 코린이의 IT 기록장] C++ 알고리즘 - 동적 계획법(Dynamic Programming) [문과 코린이의 IT 기록장] C++ 알고리즘 - 동적 계획법(Dynamic Programming) [ Dynamic Programming (동적 계획법) ] - 큰 문제를 작은 문제로 나눠서 푸는 알고리즘 1) Dynamic Programming (DP) - 큰 문제들을 나누었을 때, 작은 문제들이 중복될 수 있다. - 따라서 중복을 효율적으로 처리하는 방법을 파악하는 것이, 문제로 발생함 2) 분할정복 (Divde & Counqer) - 큰 문제들을 나누었을 때, 작은 문제들이 중복될 수 없다. - 두 가지 속성을 만족해야, 다이나믹 프로그래밍으로 문제를 풀 수 있다. 1) Overlapping Subproblem : 겹치는 작은 문제들..

반응형