프로그래머스
-
[🥲 프로그래머스] 신고 결과 받기 (2022 KAKAO BLIND RECRUITMENT)Algorithm/1일 1코테 2022. 2. 3. 14:57
신고 결과 받기 https://programmers.co.kr/learn/courses/30/lessons/92334?language=python3 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 오랜만에 코테.... 몇개월 안풀었다고 다 까먹음 ㅎ^^ 1단계지만 광탈했다! 유저가 신고한 사람들 중 k번 이상 신고당한 사람들을 추출하면 되는 문제! # 다른 사람 풀이 # 다른 사람 코드 참고 def solution(id_list, report, k): answer = [0] * len(id_list) ..
-
[😍 프로그래머스] 튜플 (2019 카카오 개발자 겨울 인턴십)Algorithm/1일 1코테 2021. 8. 26. 23:43
https://programmers.co.kr/learn/courses/30/lessons/64065 코딩테스트 연습 - 튜플 "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr 🏐 나의 풀이 🏐 from collections import Counter def solution(s): s= s.replace('{','') # 괄호 제거 s= s.replace('}','') s = list(map(int, s.split(','))) # ,으로 숫자 구분 number_dict = Counte..
-
[😍 프로그래머스] 단속카메라 - greedyAlgorithm/1일 1코테 2021. 8. 22. 12:56
https://programmers.co.kr/learn/courses/30/lessons/42884 코딩테스트 연습 - 단속카메라 [[-20,15], [-14,-5], [-18,-13], [-5,-3]] 2 programmers.co.kr 🍪 나의 풀이 def solution(routes): routes.sort(key=lambda x:x[0], reverse=True) # 시작점이 가장 큰 숫자부터 정렬 # [[-5, -3], [-14, -5], [-18, -13], [-20, 15]] count = 0 # 결과 camera = float('inf') # 카메라 위치는 임의로 가장 큰 숫자로 지정 for i in range(len(routes)): if routes[i][0]
-
[🥲 프로그래머스] 섬 연결하기 - 그리디 알고리즘Algorithm/1일 1코테 2021. 8. 10. 23:02
https://programmers.co.kr/learn/courses/30/lessons/42861 코딩테스트 연습 - 섬 연결하기 4 [[0,1,1],[0,2,2],[1,2,5],[1,3,1],[2,3,8]] 4 programmers.co.kr 나의 풀이 def solution(n, costs): costs.sort(key=lambda x:x[2]) # 비용이 작은 순대로 정렬 all_island = [i for i in range(n)] # 모든 섬 answer = 0 now = costs.pop(0) # 맨 처음 costs를 뺀다 while all_island: cur_island = now[0] # 현재섬 next_island = now[1] # 다음섬 answer += now[2] # 비용 답..
-
[프로그래머스] 여행경로 - BFS/DFS카테고리 없음 2021. 8. 4. 16:00
https://programmers.co.kr/learn/courses/30/lessons/43164# 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr 나의 풀이 # 런타임 에러로 50점.. def solution(tickets): graph = {i[0]:[] for i in tickets} # 그래프 생성 all_count = 1 # 가야되는 나라들의 수 # 그래프 생성 for ticket in tickets: graph[ticket[0]].append(ticket[1])..
-
[🥲 프로그래머스] 단어 변환 - BFS/DFSAlgorithm/1일 1코테 2021. 8. 2. 22:23
https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr ✅ 내가 시도한 풀이 from collections import deque def solution(begin, target, words): # 그래프 생성 words.append(begin) graph = {i:[] for i in words} for i in range(len(words)-1): for j in ran..
-
[🥲 프로그래머스] 네트워크 - BFS/DFSAlgorithm/1일 1코테 2021. 7. 28. 20:40
https://programmers.co.kr/learn/courses/30/lessons/43162?language=python3 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr ✅ 내가 푼 풀이 # 1차시도 -> 92.3점 def solution(n, computers): graph = {i:[] for i in range(n)} stack = [1] visited = [] # 그래프 형식으로 생성 for net in range(len(computers)): for num in range(len(co..
-
[프로그래머스] 입국심사 - 이분탐색Algorithm/1일 1코테 2021. 7. 26. 15:26
https://programmers.co.kr/learn/courses/30/lessons/43238?language=python3 코딩테스트 연습 - 입국심사 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 programmers.co.kr 다른 사람 풀이 def solution(n, times): answer = 0 left = 0 right = max(times) * n # 최대 시간 while left < right: total = 0 # 심사한 인원수 mid = (left+right) // 2 # 현재 시간 # mid만큼의 시간이 있을때 처리할 수 있는 인원 수 ..