전체 글
-
11. 주식 가격코딩 테스트/Level 2 2020. 7. 25. 22:39
https://programmers.co.kr/learn/courses/30/lessons/42584 난이도가 높지 않습니다. 공개된 지 얼마되지 않아서 푼 사람이 적은 것 같습니다. 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 파이썬 def solution(prices): a = [] for i in range(len(prices)): check = 0 for j in range(i, len(prices)-1): if prices[i]
-
9. 기능 개발코딩 테스트/Level 2 2020. 7. 23. 10:32
https://programmers.co.kr/learn/courses/30/lessons/42586 큐 카테고리의 문제입니다. 많은 사람이 푼 문제부터 풀고 있는데요. 4번이 되어야 하는 어렵지 않은 문제인데 놓쳐서 9번. 난이도가 낮은 만큼 깔끔하게 작성하는 게 좋겠네요. 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 �� programmers.co.kr 파이썬 def solution(progresses, speeds): answer = [] while progresses: for i in range(len(progresses)..
-
8. 다리를 지나는 트럭코딩 테스트/Level 2 2020. 7. 22. 09:25
https://programmers.co.kr/learn/courses/30/lessons/42583 문제에서 제시된 조건을 프로그래밍 언어로 그대로 옮겨주면 되는데 구현이 어렵지 않습니다. 다리만큼 배열을 만들고 거기에 트럭을 하나씩 올리면서 무게 체크를 하면서 한칸씩 옮겨주면 됩니다. 다만 약간의 최적화를 해주면 더욱 좋은 결과가 나오기 때문에 시간 제한에 유의하셔야 합니다. 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 길이�� programmers.co.kr 파이썬 def solution(bridge_length, wei..
-
7. 가장 큰 수 ⁂코딩 테스트/Level 2 2020. 7. 20. 22:38
https://programmers.co.kr/learn/courses/30/lessons/42746 많은 사람들이 푼 문제입니다만.. 이 많은 사람들이 이 문제를 스스로 풀었을까? 의문이 생깁니다. 평범하지 않은 풀이에 아주 많은 정답자가 있는 걸 봐도... 코딩테스트 연습 - 가장 큰 수 0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰 �� programmers.co.kr 파이썬 단순하게 주어진 조건에 따라 코딩해 봅니다. def solution(numbers): numbers = list(map(str,..
-
6. 쇠막대기코딩 테스트/Level 2 2020. 7. 20. 22:12
https://programmers.co.kr/learn/courses/30/lessons/42585 코딩테스트 연습 - 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 합니다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자릅니다. 쇠막대기와 레� programmers.co.kr 파이썬 def solution(arrangement): sum, stack = 0, 0 for element in arrangement: if element == '(': # '('인 경우 stack += 1 # 막대가 하나 쌓인다. last = '(' # '('을 지나갔음을 기록해 둔다. else: # ')' 인 경우 if last == '(': # 직전 블럭이..
-
5. 프린터코딩 테스트/Level 2 2020. 7. 20. 19:47
https://programmers.co.kr/learn/courses/30/lessons/42587 파이썬(Python) 코딩량을 줄이기 위해 pop(0)을 썼는데 리스트가 길거나 빈번한 pop(0)이 필요할 땐 collections.deque를 사용하는 게 좋겠습니다. def solution(priorities, location): answer = 0 while priorities: if priorities[0] >= max(priorities): # 반복문 내의 max 함수는 속도에 영향을 많이 줍니다. answer += 1 priorities.pop(0) location -= 1 if location == -1: return answer else: priorities.append(prioritie..
-
4. 위장코딩 테스트/Level 2 2019. 11. 11. 21:10
https://programmers.co.kr/learn/courses/30/lessons/42578 코딩테스트 연습 - 위장 programmers.co.kr 딕셔너리 (맵) 자료형을 이용해서 카운트할 수 있습니다. 파이썬 def solution(clothes): temp = {} for _, cat in clothes: if cat in temp: temp[cat] += 1 else: temp[cat] = 1 answer = 1 for each in temp.values(): answer *= each + 1 return answer - 1 딕셔너리의 setdefault를 사용하면 코드를 더 줄일 수 있습니다. def solution(clothes): temp = {} for _, cat in clot..