일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 협업 필터링
- 코딩테스트
- 데이터 엔지니어링
- 부스트캠프
- 웹크롤링
- Overfitting
- 머신러닝
- Python
- 코테
- Cosine-similarity
- codingtest
- 데이터
- coursera
- wordcloud
- recommendation system
- pytorch
- 알고리즘
- 프로그래머스
- 웹스크래핑
- 분산 시스템
- 백준
- 시각화
- Tensor
- 추천시스템
- 파이썬
- selenium
- TF-IDF
- 추천 시스템
- 딥러닝
- SGD
- Today
- Total
목록Algorithm (47)
개발자식
✔︎ 문제: https://www.acmicpc.net/problem/14503 14503번: 로봇 청소기 첫째 줄에 방의 크기 $N$과 $M$이 입력된다. $(3 \le N, M \le 50)$ 둘째 줄에 처음에 로봇 청소기가 있는 칸의 좌표 $(r, c)$와 처음에 로봇 청소기가 바라보는 방향 $d$가 입력된다. $d$가 $0$인 경우 북쪽 www.acmicpc.net ✏️ 나의 풀이 - 이 문제는 직접 그려서 이동했을 때, 예제와 같은 값이 나오지 않아 문제를 여러번 읽었었다..! 일단 1번으로 돌아간다는 말은 전체 1번을 의미한다. - 문제 그대로를 구현하면 되는데, 1. 현재 칸의 청소 유무와 벽인지 아닌지 구분이 필요하고 2. 주변이 청소되어 있는지 확인한다. 3. 주변이 모두 청소가 되어있다..
✔︎문제: https://www.acmicpc.net/problem/10799 10799번: 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저 www.acmicpc.net ✏️ 나의 풀이 - ()인 레이저인 경우와, 막대기인 경우 두가지로 나뉘는데 레이저인 경우 지금까지 쌓여있는 막대기를 수직으로 자른다. ex) (()) : 막대기 한개 레이저 한개로 두동강 남 -> 답: 2 - 막대기인 경우 stick 리스트에 쌓아주고, 레이저인 경우 stick에 쌓인 막대기개수 더해준다. 그리고 막대기가 끝나는 지점이라면 리스트에서 빼주고 +1 한다. - 현재와 앞에 값을 비교..
✔︎ 문제: https://www.acmicpc.net/problem/1439 1439번: 뒤집기 다솜이는 0과 1로만 이루어진 문자열 S를 가지고 있다. 다솜이는 이 문자열 S에 있는 모든 숫자를 전부 같게 만들려고 한다. 다솜이가 할 수 있는 행동은 S에서 연속된 하나 이상의 숫자를 잡고 모 www.acmicpc.net ✏️ 나의 풀이 0과 1의 연속적인 구간을 덩어리로 묶었을 때, 더 작은 덩어리 개수인 것을 출력하는 아이디어로 구현 - 문자열에서 숫자가 바뀌는 구간을 딕셔너리에 저장하고, 0과 1 둘중에 더 작은 값을 출력한다. - 0에서 1로 바뀔 때 check[0] += 1, 1에서 0으로 바뀔 때 check[1] += 1 로 값을 더해준다. ex) 000110 일 때, 1) 0 -> chec..
📃 문제: https://school.programmers.co.kr/learn/courses/30/lessons/42885 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr ✏️ 나의 풀이 - 순차적으로 탐색해서 조건에 맞는지 확인한다면, 다음과 같은 반례가 있음 [50, 50, 30, 20, 70, 80], limit = 100 -> 50+50, 30+20, 70, 80 으로 4개의 구명보트가 필요하지만, 20+80, 30+70, 50+50으로 태우면 3개의 구명보트만 필요하다. - 그래서 가장 몸무게가 많이 나가는 사람과 적게 나가는 사람을 쌍을 이뤄 ..
문제:https://www.acmicpc.net/problem/2579 2579번: 계단 오르기 계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점 www.acmicpc.net 나의 풀이 (틀림) - 마지막 계단은 꼭 올라야 한다는 조건을 고려해서 마지막 계단에서 거꾸로 내려가는 방식을 생각했다. - 계단을 한 칸 뛰고 온 건지 두 칸 뛰고 온 건지에 대한 확인하는 변수와 dp를 활용했는데 - 이전 계단에서 오는 경우에도 dp를 활용하여 에러 난 것 같다. - 내가 생각한 이 문제의 포인트는 마지막 계단 입장에서 최대의 해를 구할 수 있는 점화식을 세우는 것이다! 이렇게 하면 ..
주차요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 코드 - 조건대로 하나하나 구현한 형식 - 정답이긴 하지만 입차/출차를 계속 기록하는 방식으로 코드가 길다. import math def solution(fees, records): answer = [] indic = {r.split(" ")[1] : [] for r in records} outdic = {r.split(" ")[1] : [] for r in records} d..