일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- gql restapi 차이
- 리액트 메모이제이션
- 리액트 메모
- 웹팩 기본개념
- 알고리즘
- 테스트 코드 툴 비교
- next js
- 항해99 사전스터디
- 항해99 부트캠프
- js배열 알고리즘
- 리덕스
- 항해99
- Js module
- 실행컨텍스트
- 자바스크립트 엔진 v8
- 항해99 미니프로젝트
- v8 원리
- 코어자바스크립트
- 웹 크롤링
- FP 특징
- toggle-btn
- 리액트
- JS module system
- chromatic error
- 함수형 프로그래밍 특징
- jwt
- this
- 타입스크립트
- 리액트 렌더링 최적화
- 렌더링 최적화
- Today
- Total
목록알고리즘 (22)
Jaeilit
문제링크 https://school.programmers.co.kr/learn/courses/30/lessons/131127 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 오답 내가 하려던 코드 객체에 key value 로 구매해야하는 과일 갯수를 담아두고 for문을 돌면서 객체에 프로퍼티가 있으면 -- 해줌으로써 모든 과일의 갯수가 0개가 되면 그 날이 정답이라고 생각했다. 2개 테케는 다 통과했으나 정답 제출하니깐 한개 빼고 다 틀렸다... 접근이 잘못된걸까? 정답코드 정답코드를 보면 slice 를 계속 해주는 모습인데 애초에 조건에 원소길이..
문제 링크 내 오답 function solution(k, t) { var answer = 0; let obj = {} t.forEach((i) => { obj[i] = ++obj[i] || 1 }) const oj = Object.entries(obj).sort((a,b) => b[1] -a[1]) let sum = 0 let count = 1 if(oj[0][1] >= k){ return 1 } for(let i=0; i
https://www.acmicpc.net/problem/18258 18258번: 큐 2 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 2,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 문제 이해하는데 1시간은 걸린거같다. 스택에 n 까지의 숫자가 들어간다는 거를 1씩 더해서 1 2(1+1) 이런식으로 들어간다고 이해를 해서 1시간 걸렸다. 여튼.. 일단 틀린 내 코드 const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./준/스택/1874/inp..
내 코드 const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./준/누적합/11399/input.txt"; const input = require("fs") .readFileSync(filePath) .toString() .trim() .split("\n"); const N = input.shift(); const time = input.map((e) => e.split(" ").map(Number)).flat(); // [[1, 3], [2, 1], [3, 4], [4, 3], [5, 2]] let arr = []; time.forEach((e, i) => { return arr.push([i ..
https://www.acmicpc.net/problem/11659 11659번: 구간 합 구하기 4 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j www.acmicpc.net 로직 설명 입력 5 3 5 4 3 2 1 1 3 2 4 5 5 첫째줄 5 길이의 배열 중에 더해야하는 인덱싱 번호가 3개 주어진다. 5 4 3 2 1 중에 1 3 번째를 다 더해주면 5 4 3 이라서 12 2 4 는 4 3 2 를 더해줘서 9 5 5는 1 이기때문에 1이다. 답은 12 9 1 틀린 내 코드 const fs = require("fs"); const filePa..
https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 로직 정렬해서 작은 숫자 인덱스 번호 순으로 출력해주면 된다. 예) 5 2 4 -10 4 -9 출력) -10 - 9 2 4 4 -> 순서 0 1 2 3 3 출력에 맞게 순서 조정 정답 - > 2 3 0 3 1 내 틀린 코드 1 function solution(arr) { let answer = []; let left = 0; let right = ..
문제 https://www.acmicpc.net/problem/1181 1181번: 단어 정렬 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. www.acmicpc.net 틀린코드 const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./준/정렬/1181/input.txt"; const [N, ...arr] = fs.readFileSync(filePath).toString().trim().split("\n"); const charCode = a..
https://www.acmicpc.net/problem/1300 1300번: K번째 수 세준이는 크기가 N×N인 배열 A를 만들었다. 배열에 들어있는 수 A[i][j] = i×j 이다. 이 수를 일차원 배열 B에 넣으면 B의 크기는 N×N이 된다. B를 오름차순 정렬했을 때, B[k]를 구해보자. 배열 A와 B www.acmicpc.net 틀린 내 코드 const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./이분탐색/1300/input.txt"; const [N, K] = fs.readFileSync(filePath).toString().trim().split("\n"); const ary = ..
문제링크 https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 내가 푼 틀린 코드 const fs = require("fs"); const filepath = process.platform === "linux" ? "dev/stdin" : "./이분탐색/2110/input.txt"; const input = fs.readFileSync(filepath).toString().trim().split("..
문제 https://www.acmicpc.net/problem/10815 10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 정답코드 const fs = require("fs"); const filePath = process.platform === "linux" ? "/dev/stdin" : "./이분탐색/10815/input.txt"; const input = fs.readFileSync(filePath).toString().trim().split("\n"); const [N, A,..