22년 11월 28일_한달이나 지났네, SQL, 이것이
월요일[시간이 빠르다. 빛과 같이]
날이 쌀쌀하다. 마치 내 마음과 같이
오늘 뭐 하나를 알았는데 일어나자마자하는 행동 1시간이 굉장히 중요하다고 한다.
또한 todo list가 아닌 not to do list가 중요하다고 하더라
이젠 not to do list 도 기재하려한다.
Not to do list
. 나 미워하기
. 부정적 감정 갖고있기
. 하고자하는 거 참기
1. SQL 프로그래머스 정복
2. 이것이
3. 알고리즘
4. 면접준비
1>
즐겨찾기가 가장 많은식당
SELECT FOOD_TYPE, REST_ID, REST_NAME, MAX(FAVORITES) AS FAVORITES FROM REST_INFO
GROUP BY FOOD_TYPE
ORDER BY FOOD_TYPE DESC
식품 분류별 가장 비싼 식품의 정보 조회하기
우유와 요거트가 담긴 장바구니
SELECT CART_ID FROM CART_PRODUCTS
WHERE NAME LIKE '%Milk%'AND CART_ID = ANY(SELECT CART_ID FROM CART_PRODUCTS
WHERE NAME LIKE '%Yogurt%')
GROUP BY CART_ID
ORDER BY CART_ID
2>
미로탈출
설명: N x M 크기의 직사각형형태의 미로에 갇혀있다. 미로에는 여러 마리의 괴물이 있어 이를 피해 탈출해야 한다. 위치는 1,1 이고 출구는 N, M 한번에 한칸씩 이동할 수 ㅇㅆ다. 이때 괴물이 있는 부분은 0 귀물이 없는 부부은 1로 표시되어있다. 미로는 반드시 탈출할 수 있는 형태로 제시, 이 때 최소 칸의 개수를 구하시오
INPUT
5 6
101010
111111
000001
111111
111111
해설: BFS 를 이용할 때 효과적으로 해결할 수 있다 이는 가까운 노드부터 차례대로 그래프의 모든 노드를 탐색하기 때문이다.
답안:
from collections import deque
# N,M 을 공백으로 구분하여 입력받기
n, m = map(int, input().split())
# 2차원 리스트의 맵 정보 입력받기
graph = []
for i in range(n):
graph.append(list(map(int, input())))
# 이동할 네방향 정의(상,하,좌,우)
dx = [-1,1,0,0]
dy = [0,0,-1,1]
# BFS 소스코드 구현
def bfs(x, y):
# 큐 구현을 위해 deque 라이브러리 사용
queue = deque()
queue.append((x,y))
# 큐가 빌 때까지 반복
while queue:
x, y = queue.popleft()
# 현재 위치에서 네 방향으로 위치 확인
for i in range(4):
nx = x + dx[i]
ny = y + dy[i]
# 미로 찾기 공간을 벗어난 경우 무시
if nx < 0 or ny < 0 or nx >= n or y >= m :
continue
# 벽인 경우 무시
if graph[nx][ny] == 0:
continue
# 해당 노드를 처음 방문하는 경우에만 최단 거리 기록
if graph[nx][ny] ==1:
graph[nx][ny] = grap[x][y] + 1
queue.append((nx,ny))
# 가장 오른쪽 아래까지의 최단 거리 반환
return graph[n-1][m-1]
# BFS를 수행한 결과 출력
print(bfs(0,0))
3>
귤고르기
from collections import Counter
def solution(k, tangerine):
answer = 0
sum = 0
tan = Counter(tangerine).most_common()
for t in tan:
sum += t[1]
answer += 1
if sum >= k:
return answer
return answer
4>
특성있는 나, python을 듣고 지금 당장할 수 있는 것을 알아내어 근무하며 확신을 갖고 추진하고 있다.
n월 (진척도)
알고리즘 공부 4%
SQL 80%
정보처리기사 0%
토스 1%
// yesterday wished to today list.
. 스트레칭 및 운동 10분이라도 하기_✔️
. 월요일인 거 잊지 말기_✔️
. 면접 준비하기_✔️
. 점심약속 가기_✔️
. 프로그래머스 알고리즘 풀기_✔️
. SQL 다 풀기(프로그래머스 all level)_✔️만져만 봄
. 이것이 152p까지 수행_✔️
. 3개정도 넣기_✔️
tomorrow wish list
. 면접 후기
. 도서관가기
. 알고리즘
. BFS 이해하기
. SQL 못푼 거 하나라도 풀기