728x90
반응형

개발 61

[Baekjoon 11000 / Python / 골드5] 강의실 배정

그리디, 우선순위 큐 문제이다. # 골드5 -> 그리디, 자료구조, 정렬, 우선순위 큐import heapqimport sysinput = sys.stdin.readlineN = int(input())data = [list(map(int, input().split())) for _ in range(N)]data.sort()# 첫번째 시작하는 수업의 종료시간을 저장# 종료시간은 우선순위가 됨pq = []heapq.heappush(pq, data[0][1])for i in range(1, N):    # 다음 수업과 진행중인 수업이 중복되지 않을 경우 진행중 수업 빼기    if data[i][0] >= pq[0]:        heapq.heappop(pq)    heapq.heappush(pq, data..

Algorithm/Greedy 2025.01.23

[Baekjoon 2002 / Python / 실버1] 추월

구현, 문자열, 해시 테이블 문제이다. # 실버1 -> 구현, 자료구조, 문자열, 해시# 들어간 순서 해시 테이블로 저장해두기# 나온 차량 순서 기준으로, 이후 나올 차량의 "들어올 때 인덱스"를 찾아서# 나온 차량의 들어올 때 인덱스가 한 번이라도 더 클 경우 result += 1N = int(input())go_in = dict()come_out = []for i in range(N):    go_in[input()] = ifor i in range(N):    come_out.append(input())result = 0for i in range(len(go_in) - 1):    # 현재 나온 차량의, 들어올 때 순서    out_car = go_in[come_out[i]]    # 이후 나올 차..

메멘토AI의 폐업, 그리고 실직

메멘토AI는 내 인생 첫 번째 회사이다. 인턴으로 취업하여 한 달의 인턴기간을 거치고, 정직원이 되어 한달 반을 일하고 3번의 월급을 채 받지 못했을 때 나는 실직했다. 실력이 형편없어 짤린 것도 아니고 고된 업무를 버티지 못해 스스로 퇴사한 것도 아니다. 우리 회사는 꽤 큰 모기업이 있는 자회사였다. 모기업은 병원과 관련된 사업을 하는 회사인데, IT쪽도 발을 들이고 싶어 메멘토AI라는 자회사를 만든 것으로 보인다. 그 과정에서 메멘토AI의 대표님이 고용되고, 또 나머지 직원들이 고용되어 일을 하고 있던 것이다. 나도 그 중 하나였다. 이제 막 시작한 스타트업이고, 생긴지 1년도 채 되지 않아 굉장히 바빴다. 최대한 빠르게 만들어 배포하는 것이 최근까지의 회사 방향성이었고, 그렇다 보니 코드 퀄리티의 ..

자유 2025.01.12

VSCode 파이썬 노란색 밑줄 오류 해결법

입사 전 선행학습을 위해 FastAPI 공식문서를 보고 공부하던 중 발생한 오류이다.  2, 3행 fastapi, pydantic 부분에 노란색 밑줄이 쳐져 있다.오류를 확인해 보면,   이런 오류가 뜬다. pydantic도 모듈 이름만 다르고 같은 오류이다. 이 상태에서도 코드는 정상적으로 실행되지만, 저 밑줄을 보고 참을 수 있는 개발자는 없을 것이다.구글링을 해보니 언어 설정을 영어로 바꾸거나, 인터프리터 버전을 바꾸면 대체로 해결된다는 글들이 많았다.일단 언어 설정은 효과가 없었다. 그래서 인터프리터 버전을 바꿔보기로 했다.   일단 내가 파이썬 어떤 버전을 쓰는지 확인해 보았다. 현재 3.11.9를 쓰고 있다.   Ctrl + Shift + P를 누르고 interpreter를 검색하면 selec..

Development/FastAPI 2024.10.13

메멘토AI 채용연계형 인턴 개발자 합격 후기

얼떨결에 취업을 했다. 채용공고가 있는지도 몰랐었고, 정글 동기들 덕에 마감 30분 전에 채용공고를 처음 확인했다.설립된 지 7개월 된 스타트업. 대부분이 개발자로 이루어진 인원 수 40명 규모의 회사. 위치는 삼성역.1개월짜리 인턴, 그리고 도전적인 내용의 채용공고. 정규직 전환 시 연봉도 만족스러웠다. 채용공고의 뉘앙스는 이랬다. 워라밸이 중요한 개발자를 찾지 않는다, 성과에 대한 보상을 바라지 "않는" 사람을 찾지 않는다. 집요하게 일하고 성과를 내고 성과에 맞는 보상을 챙겨갈 사람을 찾는다. 이런 느낌. 회사가 설립된지 7개월 정도밖에 되지 않아 매우 바쁠 것으로 예상된다. 매우 바쁘지만 그만큼 성과에 대한 보상을 확실히 하겠다는 느낌을 많이 받았고, 그저 흘러가는 대로 사는 것보단 좀더 도전적이..

업적 2024.10.11

[Baekjoon 14503 / Python / 골드5] 로봇 청소기

구현, 시뮬레이션 문제이다. 문제에 적힌 그대로 구현하면 풀리지만, 코드로 옮기는 과정에서 한두개의 실수조차 범하지 않기는 어렵다. 복잡한 로직은 필요 없이 문제를 아주 세심히 읽고 오차 없이 완벽하게 구현해내면 된다. 물론 난 제대로 안읽어서 고생했다. # 구현, 시뮬레이션import sysinput = sys.stdin.readline# 입력받기N, M = map(int, input().split())x, y, d = map(int, input().split())room = [list(map(int, input().split())) for _ in range(N)]# 0, 1, 2, 3 -> 북 동 남 서dx = [-1, 0, 1, 0]dy = [0, 1, 0, -1]# 청소 시작room[x][y] ..

[Baekjoon 1987 / Python / 골드4] 알파벳

DFS, 백트래킹 문제이다. 상하좌우 탐색을 요하기 때문에 BFS로도 잠시 생각했었으나 백트래킹이 필요했기에 DFS로 진행했다. 어느정도 정석에 가까운 백트래킹 문제 같다. # DFS, 백트래킹import sysinput = sys.stdin.readline# 입력받기R, C = map(int, input().split())board = []for _ in range(R):    board.append(list(input().strip()))# 사전준비directions = [[-1, 0], [1, 0], [0, -1], [0, 1]]visited = [[False] * C for _ in range(R)]visited[0][0] = Truepath = set() # 집합으로 불필요한 중복 알파벳이 들어..

[Baekjoon 2668 / Python / 골드5] 숫자고르기

DFS 문제이다. 진짜 최근에 푼 문제중 가장 어렵고 헷갈렸다.그래프의 싸이클을 찾는 문제이며, 문제만 읽고 싸이클을 찾아야 겠다는 유추를 해내기가 힘들다. 그래프로 옮기는 과정도 힘들고, 싸이클 찾는 로직도 매우 헷갈리고, 단방향인지 양방향인지, 역방향은 결과에 영향을 미치는지, 싸이클을 찾으면 해당 거쳐온 노드를 모두 추가하는 건 안되는지 판단해야 했고.. 하여튼 여러 방향으로 미치는 줄 알았다. # DFSimport sysinput = sys.stdin.readline# 입력받기N = int(input())graph = [[] for _ in range(N + 1)]for i in range(1, N + 1):    graph[i].append(int(input()))def DFS(node, sta..

Algorithm/DFS 2024.10.05

[Baekjoon 2573 / Python / 골드4] 빙산

DFS, BFS 문제이다. 처음에 DFS로 풀어보려 했지만 도저히 머리를 싸매도 감이 안 와서 다른 풀이를 참고해 BFS로 풀었다. 근데 풀고 나니 별로 어렵게 느껴지지가 않는다. 뭐든 그런 것 같다. 해내기 전엔 어렵고 해내고 나면 당연한 게 되고 말이다. # BFSfrom collections import dequeimport sysinput = sys.stdin.readlineN, M = map(int, input().split()) # 행, 열ice = [list(map(int, input().split())) for _ in range(N)]dx = [-1, 1, 0, 0]dy = [0, 0, -1, 1]def iceBreaker():    # 빙산을 녹이고 개수를 세는 작업이 1번의 반복   ..

Algorithm/BFS 2024.10.04

[Baekjoon 9375 / Python / 실버3] 패션왕 신해빈

수학, 조합론, 해시 테이블 문제이다.문제 자체는 단순하고 금방 해결할 수 있을 것 같지만 나에겐 의외로 힘들었다. 수학을 잘 하는 사람이라면 금방 풀 것 같다. # 수학, 조합론, 해시 테이블import sysinput = sys.stdin.readline# 테스트 케이스 개수만큼 반복N = int(input())for _ in range(N):    n = int(input()) # 의상 개수    clothes = {}    # 의상 입력받기, 의상 이름은 필요가 없음    for _ in range(n):        _, category = input().split()        clothes[category] = clothes.get(category, 0) + 1 # 의상 종류 증가시키기  ..

Algorithm/Math 2024.10.01
728x90
반응형