일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 리액트
- react
- next Link
- 백준 스택
- kotlin
- nodejs
- 파이썬
- javascript
- NPM
- Android
- 프론트엔드
- 최적화
- C++
- 안드로이드
- JS
- 백준 스택 시간초과 python
- stdin vs input
- Python
- CSS
- 타입스크립트
- typescript
- HTML
- 자바스크립트
- TS
- 알고리즘
- 코딩테스트
- k for k
- 스택
- firebase
- 파이어베이스
- Today
- Total
목록코딩테스트 알고리즘 (41)
sooleeandtomas

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚 문제 포인트 + 설명 내가 할 줄 알아야 하는 부분은 1단계~2단계 분리와 체크이다. 3~4단계는 문제에서 지시한대로 코딩해준다. 1단계. 빈문자열 반환 2단계. 균형잡힌 괄호 문자열로 분리 문자열 w를 두 '균형잡힌 괄호 문자열' u, v로 분리합니다. u는 더이상 분리할 수 없어야 하며, v는 빈문자열일 수 있따. "균형잡힌" 괄호 문자 분리하는 방법: 여기서 포인트는 "❗️ 균형잡힌"이다. 한쪽이 많아서도 적어서도 안된다. 문자열 반복문을 돌며 (,) 갯수를 각각 체크, 갯수가 같게되면 u로 반환 (..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚 문제 포인트 1. 어떤 순서를 따르는 요소들의 모음을 튜플이라 한다. 2. 중복되는 원소가 없는 튜플이 주어진다. 💚 문제 포인트 설명 1. 순서는 배열을 작은 length부터 정렬함으로써 튜플의 원본배열의 순서를 가져올 수 있다. 2. 중복되는 원소가 없으려면 for문을 돌며 not in 또는 in 으로 확인한다 💚 나의 풀이 def solution(s): t = s[2:-2].split('},{') p = list(map(lambda x: x.split(',') , t)) sort = sorted(p,..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💚 문제 포인트 1. 문자열 압축 2. 문자를 2개단위, 3개단위..4개단위로 쪼갠다 3. 같은 값이 연속해서 나타나는 지 체크 4. 값들 중 최소값을 구하라 아래에서 좀 더 자세히 설명해보겠다. 💚 문제 포인트 설명 1. 문자열 압축 `str +=` 방식으로 문자열을 줄여나간다. str = 'aaa' str += 1 + 'hihih' # 'aaa1hihih' 2. 문자를 n개 단위로 쪼갠다. for문을 중첩으로 돌며 단위로 쪼개준다. for i in range(1, len(s)): for j in range..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 난이도 lv.2 문제 풀이 준비물1. uid를 통해 최종적으로 유일한 닉네임을 알아야 한다. 준비물2. sentence가 Leave, Enter인지에 따라 uid가 "나갔다" 혹은 "들어갔다"를 출력해준다. 이때 준비물1에서 uid에 해당하는 닉네임을 가져온다. 나의 코드 def solution(record): answer = [] map = {} for i in record: words = i.split(); if len(words) > 2: map[words[1]]=words[2] for re in rec..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 탐욕법은 선택의 순간마다 당장 눈앞에 보이는 최적의 상황만을 쫓아 최종적인 해답에 도달하는 방법이다. 일반적인 예시로 많이 나오는 문제는 "500원짜리 몇개 100원짜리 몇개, 50원짜리 몇개로 950원 만들기" 젤 큰 동전은 먼저 집은 후, 그 동전의 갯수대로 더하기 시작한다. 더하려 했을 때 950을 초과하면 더하는 걸 멈추고 그 다음으로 큰 숫자로 넘어간다. . . . 쭉쭉쭉 950을 만든다. 걍 눈앞에 닥치는대로 해치워가는 느낌이랄까 이 문제는 배열의 순서를 지킨 채로, 배열에서 수를 차례로 제거해가면..

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 설명 문제는 DFS Depth-First-Search 깊이 우선 탐색이다. 문제를 보면 이진트리로 탐색을 한다는 것의 힌트를 얻을 수 있다. 1. 더하거나 빼기 (2가지 경우로 뻗어 나간다) 우선 기준점을 [0]으로 시작한다. 일단 0을 루트노드로 가지는 것이다. 각 노드는 이진트리로 2개의 자식 노드를 가질 수 있다. 이 자식 노드는 각각에 -1 과 +1을 더한 값들이다 . 이렇게 numbers를 전부 탐색하면서 1,-1를 더한 자식 노드를 만들어간다. 결과적으로, numbers의 수들을 빼거나 ..