코딩 테스트
-
입국심사코딩 테스트/Level 3 2020. 9. 26. 14:28
https://programmers.co.kr/learn/courses/30/lessons/43238 입국심사 이분탐색 1833명 완료 코딩테스트 연습 - 입국심사 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 � programmers.co.kr 이분(이진)탐색은 최대값, 최소값, 중간값을 두고.. 찾는 값이 중간값보다 낮으면 최대값을 '중간값-1'으로 낮추고 찾는 값이 중간값보다 높으면 최소값을 '중간값+1'으로 올려주면서 숫자를 찾아가는 방식이다. 예전에 블로그에 정리한 적 있다. https://comdoc.tistory.com/entry/32-%EC%9D%B4%E..
-
단속카메라 ⁂코딩 테스트/Level 3 2020. 9. 23. 07:48
단속카메라탐욕법(Greedy) 1720명 완료https://programmers.co.kr/learn/courses/30/lessons/42884 코딩테스트 연습 - 단속카메라[[-20,15], [-14,-5], [-18,-13], [-5,-3]] 2programmers.co.kr시간제한이 없다면.. def solution(routes): cameras = set() while routes: all_case = {} for route in routes: for i in range(min(route), max(route) + 1): all_case[i] = all_case.get(i, 0) + 1 max_ = m..
-
방문길이코딩 테스트/Level 3 2020. 9. 22. 00:21
방문 길이 Summer/Winter Coding(~2018) 1364명 완료 어렵지 않은데 유독 완료 수가 작다... 아래 풀이를 보지 말고 자신 있게 풀어보시길 ... https://programmers.co.kr/learn/courses/30/lessons/49994 코딩테스트 연습 - 방문 길이 programmers.co.kr def solution(dirs): paths, x, y = set(), 0, 0 for i in dirs: prev_x, prev_y = x, y if i == "U" and y + 1 x or prev_y > y else (x, y, prev_x, prev_y)) elif..
-
최고의 집합코딩 테스트/Level 3 2020. 9. 20. 14:18
최고의 집합연습문제 1855명 완료https://programmers.co.kr/learn/courses/30/lessons/12938 코딩테스트 연습 - 최고의 집합자연수 n 개로 이루어진 중복 집합(multi set, 편의상 이후에는 집합으로 통칭) 중에 다음 두 조건을 만족하는 집합을 최고의 집합이라고 합니다. 각 원소의 합이 S가 되는 수의 집합 위 조건을 만족programmers.co.krdef solution(n, s): if n > s: return [-1] answer = [int(s/n)] * n for i in range(s % n): answer[n - 1 - i] += 1 return answer
-
가장 긴 팰린드롬코딩 테스트/Level 3 2020. 9. 18. 11:53
가장 긴 팰린드롬연습문제 2100명 완료https://programmers.co.kr/learn/courses/30/lessons/12904 코딩테스트 연습 - 가장 긴 팰린드롬앞뒤를 뒤집어도 똑같은 문자열을 팰린드롬(palindrome)이라고 합니다. 문자열 s가 주어질 때, s의 부분문자열(Substring)중 가장 긴 팰린드롬의 길이를 return 하는 solution 함수를 완성해 주세요. 예를들programmers.co.kr파이썬의 효율성 테스트가 제대로 설정되지 않은 것 같다. 단순한 코드로 바로 Pass.Manacher's Algorithm을 사용하는 것이 더 좋다. (반칙 같지만 https://docs.python.org/ko/3/library/difflib.html 를 이용하는 방법도 ..
-
가장 먼 노드코딩 테스트/Level 3 2020. 9. 17. 11:50
가장 먼 노드그래프2186명 완료https://programmers.co.kr/learn/courses/30/lessons/49189 코딩테스트 연습 - 가장 먼 노드6 [[3, 6], [4, 3], [3, 2], [1, 3], [1, 2], [2, 4], [5, 2]] 3programmers.co.kr그래프를 안다면 어려운 문제는 아니니까.. 모른다면 최단 경로 찾기를 참고... https://comdoc.tistory.com/entry/25-%EA%B7%B8%EB%9E%98%ED%94%84-%EC%B5%9C%EB%8B%A8-%EA%B2%BD%EB%A1%9C-%EC%B0%BE%EA%B8%B0 25. 그래프 - 최단 경로 찾기너비 우선 검색(bfs)의 응용입니다. 경로의 길이가 1인 노드(정점)들을 찾아..
-
등굣길코딩 테스트/Level 3 2020. 9. 16. 21:24
등굣길 동적계획법(Dynamic Programming) 2215명 완료 동적계획법 치고는 어렵지 않은 편.. 그림을 그려보면 의외로 직관적이다.. https://programmers.co.kr/learn/courses/30/lessons/42898 코딩테스트 연습 - 등굣길 계속되는 폭우로 일부 지역이 물에 잠겼습니다. 물에 잠기지 않은 지역을 통해 학교를 가려고 합니다. 집에서 학교까지 가는 길은 m x n 크기의 격자모양으로 나타낼 수 있습니다. 아래 그림은 m = programmers.co.kr https://comdoc.tistory.com/entry/%EB%93%B1%EA%B5%A3%EA%B8%B8-%EB%8F%99%EC%A0%81%EA%B3%84%ED%9A%8D%EB%B2%95 (파이썬) 등굣..
-
야근 지수코딩 테스트/Level 3 2020. 9. 15. 19:31
야근 지수연습문제2556명 완료https://programmers.co.kr/learn/courses/30/lessons/12927 코딩테스트 연습 - 야근 지수회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도programmers.co.kr그냥 시키는 데로 코딩했습니다. 통과되더라고요. from bisect import insortdef solution(n, works): if sum(works) 효율성 테스트테스트 1 〉 통과 (464.63ms, 11MB)테스트 2 〉 통과 (404.02ms, 11.1MB)bisect 모듈의 사용법을 알고 계시면 좋..