전체 글 474

[Python/프로그래머스]신고 결과 받기

https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 코드 : (defaultdict 사용) from collections import defaultdict def solution(id_list, report, k): answer = [] # 중복 신고 제거 report = list(set(report)) user = defaultdict(set) cnt = defaultdict(int) for r in r..

[코테후기]네이버 부스트 캠프 _ 1차 코딩테스트 후기

[ 혹시 이 글이 문제가 된다면 지우겠습니다.] 4학년 1학기가 종강한 후 아직 부족하다는 것을 깨닫고 교육기관을 찾아다녔다. 그 중 네이버 부스트캠프는 유명하고, 후기 또한 자자했다. 구글링, 유튜브, 밋업, 설명회를 모두 찾아 본후 지원했다. 작년부터 cs문제 10문제와 코테 문제 2문제가 나온다고 후기에 글이 있었다. 부랴부랴 cs를 위해 cs50을 수강하고 https://velog.io/@dumi33/series/%EB%AA%A8%EB%91%90%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B3%BC%ED%95%99CS50 시리즈 | 모두를 위한 컴퓨터 과학_CS50 - dumi33.log 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, results): answer = 0 win_graph = defaultdict(set) # 이긴 선수 lose_graph = defaultdict(set) # 진 선수 for winner, loser in results : win_graph[loser].add(winner) lose_graph[winner].add(loser) for i in range(1,n+1) ..

[Python/프로그래머스] 소수 찾기_완탐

https://programmers.co.kr/learn/courses/30/lessons/42839 코딩테스트 연습 - 소수 찾기 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 programmers.co.kr 코드 : from itertools import permutations # 소수 판별 def is_prime_number(x) : if x

[Python/프로그래머스]모의고사_완탐

https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 코드 : def solution(answers): answer = [] supo1 = [1,2,3,4,5] supo2 = [2,1,2,3,2,4,2,5] supo3 = [3,3,1,1,2,2,4,4,5,5] cnt = [0,0,0] for i in range(len(answers)) : if answers[i] == supo1[i%5] : cnt[0] +=1 i..

[Python/프로그래머스]단속 카메라_Greedy(그리디)

https://programmers.co.kr/learn/courses/30/lessons/42884 코딩테스트 연습 - 단속카메라 [[-20,-15], [-14,-5], [-18,-13], [-5,-3]] 2 programmers.co.kr 1. 빨리 끝나는 순으로 정렬한다. 2. 카메라를 가장 처음에 둔다. 3. 구간 시작보다 카메라가 이전에 있다면 3-1. 끝나는 곳에 카메라를 설치한다. 코드 : def solution(routes): answer = 0 routes.sort(key = lambda x : x[1]) # 빨리 끝나는 순으로 정렬 camera = -30001 for route in routes : if camera < route[0] : # 시작위치보다 전에 카메라가 있다면 answe..

[Python/프로그래머스]섬 연결하기_Greedy(그리디)

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 Kruskal 알고리즘을 이용해 풀이하였다. 1. 비용이 작은 순으로 정렬한다. 2. connect set을 만들어 연결 여부를 확인한다. 3. while문을 통해 전부 연결될 때까지 돌린다. 3-1. cost에 이미 있으면 continue 3-2. cost에 없으면 connect 에 넣고 비용을 더한다. 4. 비용 반환 코드 : def solution(n, costs): answer = 0 costs.sort(key = lambda x : x[2]) # 비용..