일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- BFS
- DP
- c#
- 구현
- 그래프 탐색
- JS
- DART
- 코딩테스트
- 자료구조
- Algorithm
- 못그리지만
- Java
- 프로그래머스
- 스터디
- 알고리즘
- 쓰셨잖아
- sort
- JavaScript
- 백준
- 삼성sw역테
- 카카오
- 코드트리
- 자바스크립트
- 문자열 파싱
- 이진탐색
- BAEKJOON
- 파이썬
- Flutter
- 동적 프로그래밍
- programmers
- Today
- Total
목록JS (16)
Algo 쓰자
▶ 문제 : 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]..
▶ 문제 : 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..
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..
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..
https://programmers.co.kr/learn/courses/30/lessons/17676#qna count) { count = temp; } } return count; } ▶ 문제 풀이 : 1. 초기 각각의 로그 정보 문자열들에 대해 시간을 초의 누적으로 변환한다. - 해당 문제의 경우 소수점 셋째자리까지 나타나 있기에 1000을 곱하여 정수형태로 변환한뒤 시작시간과 끝시간의 초(second)누적값을 data 배열에 저장했다. 2. 이제 해당 값들을 이용해 탐색하여 1초동안 처리된 로그수의 최대값을 찾아야하는데 초기 완전탐색을 이용해 구현했으나 시간초과가 나왔다. 3. 이로인해 로직에 변화를 주어야 했고, 종료시간을 기준으로 오름차순된 정렬된 데이터(lines)임에 착안하여 각 로그의 종료..
https://programmers.co.kr/learn/courses/30/lessons/64065?language=javascript 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr ▶ 코드 : function solution(s) { var answer = []; var data = new Map(); // 입력으로 들어오는 문자열 파싱 var reg = new RegExp(/[\{\}]/,'g'); s = s.replace(reg, ''); s = s..
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..