https://programmers.co.kr/learn/courses/30/lessons/43238?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] 이게 왜 이분탐색 알고리즘으로 분류될까? 라는 생각밖에 안들었고 문제를 딱봤을 때 이분탐색으로 어떻게 풀어야될지 감이 안잡혀서 작성코드를 제외하고, 푼사람들의 풀이과정을 살펴봤다. 여러풀이들이 있지만, 그나마 나에게 이해가 되는 풀이는 아래 블로그의 설명이다. 프로그래머스에서 제시된 예시로 이용하자면 N(사람수) =6, times=[7,10] 여기서 주의를 하자면 20분..
https://programmers.co.kr/learn/courses/30/lessons/12905 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] [코드 - python3] from copy import deepcopy def solution(board): row=len(board) col=len(board[0]) answer=max(board[0]) dp=deepcopy(board) for r in range(1,row): for c in range(1, col): if board[r][c]==1: if board[r-1][c-1]==1 an..
https://programmers.co.kr/learn/courses/30/lessons/43237?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] 이진탐색의 틀만 안다면 풀 수 있다. budgets=[ 120, 110, 140 , 150] 의 예를 든다면 (1) 먼저 budget을 오름차순 정렬시킨다. (2) left=0 , right=budgets[-1]=150 으로 초기화 한다. (3) 여기서 두가지 경우가 나올 수 있다. (3-1) M>=[상한액이 right일때 요청금액] 예시에서 right=150이므로 상한..
https://programmers.co.kr/learn/courses/30/lessons/42579 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] (1) PSUM : 장르별 총 재생횟수를 비교한다. => PSUM을 내림차순 정렬한다. PSUM은 딕셔너리이며 키(Key)값은 장르이고, Value값은 해당장르를 재생한 횟수들의 총 합이다. (2) G[장르] =[ (재생횟수1, 고유번호1), (재생횟수2, 고유번호2) ... ] & 장르별 노래선택 [ 노래를 선택 최대 횟수 ] 장르에 있는 노래들을 리스트에 넣는다. 여기서 주의해야할게 장르별로 최대..
https://programmers.co.kr/learn/courses/30/lessons/43163 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [풀이] 전형적인 DFS와 Backtracking을 활용한 문제이다. 먼저 논리의 순서대로 해보자면 (1) target이 words리스트에 있는지/ 없는지를 확인해야한다. => 있다면 dfs()함수를 호출하여 target까지 도다하는데 최소 횟수를 구해야한다. => 없다면 0을 리턴한다. target이 words 리스트에 존재한다면 (2) words의 모든 원소들에 대한 방문리스트를 나타낸다. 나는 여기서 방..
https://programmers.co.kr/learn/courses/30/lessons/62049 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [코드] def solution(n): answer=[0] for i in range(n-1): answer=answer+[0]+[bit^1 for bit in answer[::-1]] return answer [실패코드] 테스트케이스 17개중 15개 맞음 (2문제는 시간초과) def solution(n): answer=[0] if n==1: return answer for i in range(2,n+1): ..
https://programmers.co.kr/learn/courses/30/lessons/60058 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주저리: 역시 문제 길이가 긴 문제는 친절한데 읽고 해석하는게 귀찮아서 대놓고 알려준 힌트임에도 불구하고... 못풀고 헤메는 경우가 있다. 문제가 긴것은 친절한 문제이고, 해석과 이해를 할 수 있다면 풀도록 설계된 문제이다 ㅠㅠ 문제를 잘 읽자. [코드] def recursion(p): #p가 비어있있는 문자열이라면 if len(p)==0: return p #p를 균형잡힌 두 문자열로 분리한다. num=0 f..
https://programmers.co.kr/learn/courses/30/lessons/1829?language=java# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr [코드] import java.util.*; class Solution { //상하좌우 static int dy[]={-1,1,0,0}; static int dx[]={0,0,-1,1}; static Queue q= new LinkedList(); static class Element{ int y, x, val; Element(int y, int x, int val){ this.y=y..
- Total
- Today
- Yesterday
- jest
- TypeScript
- MySQL
- 습관개선
- nestjs jest
- Jekyll
- 한달어스
- RDBMS
- 디지털디톡스
- nestjs
- 한달독서
- MongoDB
- IT용어
- OS
- 나도 할 수 있다
- typeORM
- vscode
- git
- node.js
- 미완
- 스마트폰중독
- 바이트디그리
- Nest.js
- TDD
- 갓생살자
- 클린아키텍쳐
- 개발용어
- Mongoose
- gem
- 참고
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |