본문 바로가기

전체 글

(906)
프로그래머스 그래프 가장 먼 노드 python 풀이 https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드 | 프로그래머스 6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3 programmers.co.kr def solution(n:int, edge:int)->int: graph =[[] for _ in range(n)] distances = [ 0 for _ in range(n) ] is_visited = [False for _ in range(n)] # 시작 노드 방문 queue = [0] is_visited[0] = True # 노드 연결 for (a,b) in edge: graph[a-1].append(b-1)..
프로그래머스 그래프 순위 python 문제풀이 https://programmers.co.kr/learn/courses/30/lessons/49191 코딩테스트 연습 - 순위 | 프로그래머스 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr from collections import defaultdict def solution(n:int,results:list)->int: # 정확하게 순위를 매길 수 있는 선수들의 수를 구한다. # 한 선수가 다른 선수와 경쟁했을 때, 이기고 진 횟수의 합이 정확하게 n-1번 이라면 이 선수의 순위를 알 수 있다 # 먼저 results의 결과를 통해 결과를 만든다. # 그 후 results의 결과를 통해 유추할 수 있는 결과를 갱신한다 answer=0 wi..
Microsoft Ignite The Tour Seoul 2일차 방문기 https://itchallenger.tistory.com/53 Microsoft Ignite The Tour Seoul 1일차 방문기 저는 1/21일 강남 COEX에서 22일까지 개최하는 Microsoft Ignite The Tour 행사에 참가했습니다. 이 행사는 Microsoft의 Cloud Platform인 “Azure”에 대한 다양한 분야의 세션으로 구성된 행사입니다.. itchallenger.tistory.com 사실 어제 방문했지만 귀찮아서... ㅋㅋ 사실 이 곳은 제가 일하는 건물(파견이기에 저희 회사 건물은 아닙니다... ㅋㅋ)에서 얼마 떨어져 있지 않죠. 다른 분들은 열심히 일하시는데 저 혼자 여기서 뭔가 한가롭게? 이 넓은 곳을 걸어다니고 있으니 기분이 이상하더군요 ㅋㅋ 또한 세션이 ..
Microsoft Ignite The Tour Seoul 1일차 방문기 저는 1/21일 강남 COEX에서 22일까지 개최하는 Microsoft Ignite The Tour 행사에 참가했습니다. 이 행사는 Microsoft의 Cloud Platform인 “Azure”에 대한 다양한 분야의 세션으로 구성된 행사입니다. 회사 명과 이름이 새겨진 뱃지를 받고… 행사 및 커뮤니케이션 장소인 홀로 들어갑니다. 여기서는 식사 및 간식이 제공됩니다. 저는 이런 행사는 처음이어서... 여기에서 시간 끌다가 첫번째 세션에 늦었습니다. ㅠㅠ 행사는 45분 간의 세션, 30분 간의 기나긴 휴식의 텀으로 진행되지만, 참가자들이 매우 많았고, 코엑스 건물이 워낙 크기 때문에 원하는 세션에 줄서서 자리 잡으면 시간이 다 지니갑니다… 그리고 한국인 강사의 한국어 세션과, 외국인 강사의 현장 통역이 제공..
[SI/SM] SI/SM 개발자의 이야기 연재. 1. SI/SM 회사는 무슨 일을 하나요? 개발자로서 그 동안 산출물을 남기는데 있어 너무 소홀했음을 자책하며... 또한 이 블로그의 가장 핫한 컨텐츠가 취업 관련 컨텐츠이기에 관련 컨텐츠를 자주 연재하기로 마음먹었다. 그래서 오늘은 내가 속해 있는 IT서비스 (속칭 SM/SI 회사) 업계에 대한 이야기를 해보려 한다. IT서비스 (SI/SM) 회사란? 다른 계열사의 시스템을 유지, 보수, 구축 해주는 회사이다. 삼성SDS의 예를 들어 설명하면, 삼성전자의 영업, 마케팅 직무가 활용하는 업무지원 시스템이 있는데... 이런 시스템들을 구축(만들어줌), 유지/보수 (버그 잡고, 요청에 따라 새로운 기능을 개발해주거나 UI, UX를 수정해줌) 해주는 업무를 수행한다. 왜 SI/SM은 헬이라고 하나요...? 1) 납기 보통 대기업 SI업체는 (앞으로는 ..
Programmers 코딩 테스트 연습 정렬(Sort) h-index 정답 Python. def solution(citations): answer = 0 citations_sorted = sorted(citations,reverse=True) for i in range(len(citations_sorted)): if citations_sorted[i]>=i+1: answer = i +1 continue else: break return answer # 6 5 3 1 0 이 문제는 왜 정렬을 써야하는가...? 를 빠르게 캐치해내지 못하면 한도 끝도 없이 못풀고, Idea를 이해하면 쉬운 문제이다. h번 인용 이상이 h개, 나머지는 h번 이하... 를 찾는게 중요하고. h는 크기보다 횟수에 초점을 맞추어야 한다는 것을 생각하면 쉽다. 먼저 테스트 케이스를 정렬하면 6 5 3 1 0 이렇게 되는데..
Programmers 코딩 테스트 연습 힙(Heap) 라면공장 정답. import heapq def solution(stock, dates, supplies, k): answer, idx = 0, 0 pq = [] while stock < k: # stock과 보급 전까지 버틸 수 있는 날자는 같다. for current in range(idx, len(dates)): # idx는 소진되지 않은 dates와 stock의 idx를 의미한다. if dates[current]
Programmers 코딩 테스트 연습 힙(Heap) 더 맵게 정답. 정렬과 해시, 힙, 스택, 큐는 시간 복잡도 개념에 있어서 익숙해 지는데 매우 중요한 문제들로 구성되어 있는 것 같다. 여러번 풀어서 반복 숙달하자. 이런 류의 정렬된 값을 계속 푸시 & 팝 해야 하는 경우는 우선순위 큐를 쓰는 것이 유리하고 리스트를 이용한 우선순위 큐는 파이썬의 heapq를 이용해서 만든다. (heap은 우선순위 큐를 구현하기 위한 자료구조이다.) PrioritiyQueue를 이용해서 만드는 방법도 있지만, 이는 (우선순위, 데이터)의 형태로 사용해야 하기 때문에 이런 문제를 풀기에 있어서는 귀찮다. 이 heapq에서 지원하는 heap은 minheap이다. 이 heapq를 통해 maxheap를 구성하기 위해서는 -를 넣어서 push해주고 다시 -를 붙여 pop해주는 약간의 번거로움이 ..