[Baekjoon] 1676 팩토리얼 0의 개수
·
💯 CodingTest/BaekJoon
▶ 문제 : https://www.acmicpc.net/problem/1676 1676번: 팩토리얼 0의 개수 N!에서 뒤에서부터 처음 0이 아닌 숫자가 나올 때까지 0의 개수를 구하는 프로그램을 작성하시오. www.acmicpc.net ▶ 코드 : let input = require('fs').readFileSync(`Computer Science/Alogrithms/백준JS/testCase.txt`).toString().split('\n'); function count5(num){ let count = 0; while(num % 5 === 0){ num = parseInt(num / 5) count += 1; } return count } const inputNum = parseInt(input[0]..
[Baekjoon] 1389번 케빈 베이컨의 6단계 법칙
·
💯 CodingTest/BaekJoon
▶ 문제 : https://www.acmicpc.net/problem/1389 1389번: 케빈 베이컨의 6단계 법칙 첫째 줄에 유저의 수 N (2 ≤ N ≤ 100)과 친구 관계의 수 M (1 ≤ M ≤ 5,000)이 주어진다. 둘째 줄부터 M개의 줄에는 친구 관계가 주어진다. 친구 관계는 A와 B로 이루어져 있으며, A와 B가 친구라는 뜻 www.acmicpc.net ▶ 코드 : let input = require('fs').readFileSync(`Computer Science/Alogrithms/백준JS/testCase.txt`).toString().split('\n'); const [n, m] = input[0].split(' ').map(num => parseInt(num)) let kevin..
[Programmers] (Javascript) 순위 검색
·
💯 CodingTest/Programmers
https://programmers.co.kr/learn/courses/30/lessons/72412 a-b); data.set(key, temp); } } function solution(info, query) { let answer = []; makeData(info); let keyList = [...data.keys()]; query.map((s) => { s = s.split(' '); let qScore = s.pop(); s= s.filter((element) => {if (element !== '-' && element !== 'and'){return true;}}); let temp = keyList.filter((key) => s.every(word => key.includes(word..
[Programmers] (Javascript) 메뉴 리뉴얼
·
💯 CodingTest/Programmers
https://programmers.co.kr/learn/courses/30/lessons/72411?language=javascript# 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr ▶ 코드 : function solution(orders, course) { let answer = []; let data = new Map(); for (const order of orders) { let orderToArr = [...order]; orderToArr = orderToArr.sort(); for (let i..
[Programmers] (Javascript) 추석 트래픽
·
💯 CodingTest/Programmers
https://programmers.co.kr/learn/courses/30/lessons/17676#qna count) { count = temp; } } return count; } ▶ 문제 풀이 : 1. 초기 각각의 로그 정보 문자열들에 대해 시간을 초의 누적으로 변환한다. - 해당 문제의 경우 소수점 셋째자리까지 나타나 있기에 1000을 곱하여 정수형태로 변환한뒤 시작시간과 끝시간의 초(second)누적값을 data 배열에 저장했다. 2. 이제 해당 값들을 이용해 탐색하여 1초동안 처리된 로그수의 최대값을 찾아야하는데 초기 완전탐색을 이용해 구현했으나 시간초과가 나왔다. 3. 이로인해 로직에 변화를 주어야 했고, 종료시간을 기준으로 오름차순된 정렬된 데이터(lines)임에 착안하여 각 로그의 종료..
[Programmers] (Javascript) 수식 최대화
·
💯 CodingTest/Programmers
https://programmers.co.kr/learn/courses/30/lessons/67257 코딩테스트 연습 - 수식 최대화 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 programmers.co.kr ▶ 코드 : function solution(expression) { var orders = [ ['*', '+', '-'], ['*', '-', '+'], ['+', '-', '*'], ['+', '*', '-'], ['-', '+', '*'], ['-', '*', '+'], ]; let answer = -1; for (const order of orders..
[Programmers] (Javascript) 뉴스 클러스터링
·
💯 CodingTest/Programmers
https://programmers.co.kr/learn/courses/30/lessons/17677 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브 programmers.co.kr ▶ 코드 : function divide(p) { let temp = []; let reg = new RegExp(/[a-z][a-z]/); for (let i =0; i < p.length-1; i ++){ var data = p.slice(i,i+2); if (reg.test(data)){ temp.push(data); } } retur..