[에러] typescript import 오류 : Could not find a declaration file for module 모듈에 대한 선언 파일을 찾을 수 없습니다.
·
기술/TypeScript
Could not find a declaration file for module 'module-name'.Could not find a declaration file for module (모듈에 대한 선언 파일을 찾을 수 없습니다) 문제 발생구글 스프레드시트를 연동하는 라이브러리 사용중 다음과 같은 에러가 발생했다. 자바스크립트만 지원하는 npm 모듈을 TypeScript에서 사용할 때 발생하는 오류이다.npm 모듈 개발자가 TypeScript 타입을 지정하지 않고 자바스크립트만 지원하는 npm 모듈을 만든 경우 TypeScript에서 사용할 때 오류가 발생한다. 해당 라이브러리가 타입 정의를 지원할 경우 오류코드에 나와있는 것처럼 @types/google-spreadsheet 를 설치해도 해결되지만, ..
프로그래머스, 자바스크립트) 특이한 정렬
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/120880 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이절대값의 차이를 비교하고, 같은 수가 있을경우에는 내림차순으로 정렬되게 한다. function solution(numlist, n) { return numlist.sort((a, b) => { const A = Math.abs(a - n); const B = Math.abs(b - n); if (A === B) { return b - a; // 거리가 같을 때는 더..
프로그래머스, 자바스크립트) 배열 만들기 2
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/181921 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이직접구하는건 쉬운데 코드로 짜보는게 더 어렵다..꼼수를 쓰자하니 더 복잡해지는거 같아 정석대로 풀기범위 구간에서 반복문으로 돌면서 5,0이 들어간 애들만 정규식으로 추출해서 true인 경우 배열이 집어 넣는다.function solution(l, r) { let answer = []; for (let i = l; i
프로그래머스, 자바스크립트) 유한소수 판별하기
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/120878 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr풀이여러가지 꼼수를 부려보다가 실패해서 결국 정석대로...일단 기약분수를 한번에 만들어 주기 위해서는 분자, 분모의 최대공약수를 구하면 된다.최대공약수를 구한다음 분모를 기약분수로 만들준다 num = b/gcd 기약분수의 분모인 num이 2또는 5만 소인수로 가지고 있어야 되므로2와 5로 계속 나누어 1이 되는지 확인해준다 예시로 10이 기약분수라면 2로 계속 나눴을때 55를 계속 나누었을땐 1 ..
프로그래머스, 자바스크립트) 문자열 밀기
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/120921 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이문자열을 배열로 바꾼 다음 진행한다.A와 B가 같다면 바로 0을 리턴하고같지않다면 pop()으로 맨 뒤의 요소를 떼와 unshift로 맨 앞에 넣어준다. 그 배열을 합쳐서 만들어진 문자열이 B와 같다면 인덱스에 1을 더해 리턴해준다. (밀어낸 문자수니까 1부터 시작)문자열 전체를 밀어도 같지 않다면, -1 을 리턴 해준다.function solution(A, B) { const str = ..
프로그래머스, 자바스크립트) 저주의 숫자 3
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/120871 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이3의 저주... 369 게임을 한다고 생각해보면 된다. 이 게임은 직접 해봐야 알 수 있고 패턴을 계산하기에는 어렵다.그래서 컴퓨터에게 369 게임을 시켜보려고 한다. 몇 번째 박수인지 진행되는 단계수 파악, 최종 리턴할 결과 값, 1,2,3,4 ...쭉쭉 이어져갈 숫자step이 n번 진행될때마다 num에는 정상적인 숫자 패턴을 입력해주고 1. 3의 배수2. 3이라는 문자가 포함3. 3의 배..
프로그래머스, 자바스크립트) 치킨 쿠폰
·
개발/알고리즘(코딩테스트)
문제https://school.programmers.co.kr/learn/courses/30/lessons/120884 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이우선 서비스 치킨은 0, 쿠폰의 수는 치킨 수로 설정한다.이 동작은 쿠폰이 10개 이상일때 계속 반복되어야 하니 while문을 사용한다.쿠폰이 10장 생기면 서비스 치킨을 받을 수 있으니 서비스는 = 쿠폰/10장 반내림으로 설정하고 이때 쿠폰의 수는 10으로 나눴을때 나머지 + 서비스 치킨으로 받은 쿠폰 으로 계산해준다. 이 과정을 쿠폰이 10장 미만이라 치킨을 더 이상 시켜먹지 못할 때까지..
프로그래머스, 자바스크립트) 전국 대회 선발 고사
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/181851 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 일단..문제를 보고 든 생각, 배열에서 true만 뽑아 랭크 : 번호 로 할당된 객체를 만든다. 객체는 key가 숫자일 경우 자동적으로 오름차순 정렬되기 때매 랭크 순서대로 정렬된 값을 구할 수 있다. 다음 Object.values 를 통해 배열로 변경해 순서대로 3개를 꺼낸다 (무조건 3개 이상의 값을 가진다는 조건이 있으니 등수가 모자랄 경우는 고려하지 않음) function so..
프로그래머스, 자바스크립트) 등수 매기기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120882 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 일단 배열을 돌며 평균 점수로 바뀐다. 점수를 sort를 통해 크기 순서대로 정렬한 다음 해당 배열에 해당하는 인덱스를 찾아 낸다 => 등수!! function solution(score) { const avg = score.map((test) => test.reduce((a, b) => a + b, 0) / test.length); const sortedAvg = [...avg].s..
프로그래머스, 자바스크립트) 직사각형 넓이 구하기
·
개발/알고리즘(코딩테스트)
문제 https://school.programmers.co.kr/learn/courses/30/lessons/120860 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 직사각형이란 조건이 주어졌으니 직각이다라는 점을 생각하면 된다. 한 꼭짓점을 공유하는 두 변을 찾으면 된다. 좌표 하나를 기준으로 정한 다음, x좌표가 같은 경우, y좌표가 같은 경우를 찾아 길이를 구해 곱해준다. function solution(dots) { //직사각형 = 직각, 서로 직각이 되는 면을 찾자 const [x, y] = dots[0]; let answer = 1; /..