프로그래머스

문제https://school.programmers.co.kr/learn/courses/30/lessons/12927# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 접근 방법이번 문제는 (잔업)^2 들의 합이 최소값을 구하는 문제다. 이 문제를 보고 두가지 포인트를 잡았다. 첫 번째 정렬, 두 번째 최대값 활용 풀이 방법은 최대힙과 그리디를 이용한 값의 표준편차를 줄이는 풀이 두 가지가 있다. 물론 두 방법 모두 최대값과 나머지 값들을 비교해 표준편차를 줄이는 방법이다. 최대힙을 이용한 풀이우선 최대힙을 이용해 문제 풀이를 하기 전에 힙 Class를 ..
문제https://school.programmers.co.kr/learn/courses/30/lessons/43162 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 풀이해당 문제는 DFS를 이용해 모든 조합을 검증해야 하는 문제이다. 코드const solution = (n, computers) => { let answer = 0; const visited = []; const dfs = (idx) => { visited[idx] = true; for (let i = 0; i
문제https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이처음에는 DFS로 풀어볼까 라고 생각했지만 시간초과 에러가 예상되어 정렬 알고리즘을 생각해봤다. sort 메서드를 사용할 때 a b 두 변수는 문자열이며 두 문자열을 앞뒤로 서로 더했을 때, 크기를 기준으로 정렬했다. 마지막에 값을 반환할 때는 0으로 시작하는 모든 문자들을 0으로 대체했는데, 이는 numbers로 입력된 배열의 요소들이 모두 수학적으로 0일때의 예상 결과는 0이 되기 때문에..
문제 설명https://school.programmers.co.kr/learn/courses/30/lessons/154539 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr문제 풀이 방법이번에 다시 풀어본 문제는 시간 복잡도 최적화가 중요한 문제이다. const solution = (numbers) => { let answer = new Array(numbers.length).fill(-1); for(let i = 0; i numbers[i]){ answer[i] = numbers[j]; ..
문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/42577?language=javascript# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 방법 해당 문제는 해시를 이용한 풀이가 정론이다. 각 문자별 해시테이블을 만들어준 뒤 phone_book의 요소들을 순회하며 문자를 slice 해가며 해시테이블에 존재하는지 확인한다. 이게 정론이지만 해당 문제는 sort 정렬을 이용해 쉽게 해결이 가능하다. sort()를 이용하면 가장 첫자리 부터 끝자리 까지의 수와 전체 크기를 비교해 ..
문제 설명 문제 풀이 방법 이번 문제는 슬라이딩 윈도우 알고리즘을 이용한 문제다. 처음 접한 알고리즘이기에 조금 어려웠다.... 아무리 해답을 봐도 이해가 좀처럼 되지 않았다....... 서로 비슷한 슬라이딩 윈도우 알고리즘과 투포인터 알고리즘은 조만간 정리해서 글로 작성해 공부하자. 우선 중복 되는 값을 처리하기 위해 Set를 만들어 준뒤, 나누는 수열의 길이는 1부터 주어지는 원소들의 길이와 같기 때문에 1부터 시작해 elements.length 까지 동작. 슬라이딩 윈도우 알고리즘의 특징은 기존에 있던 사이즈에서 새롭게 나타나는 부분과 기존에 있던 부분이 없이지는 점이있다. 이 문제에서는 숫자들의 합의 경우를 구하는 것이기 때문에 합에서 이전 합에서 가장 작은 인덱스의 값을 빼고 새로 들어올 인덱스..
58청춘
'프로그래머스' 태그의 글 목록 (8 Page)