반응형 프로그래머스3 [프로그래머스] 디스크 컨트롤러 회사에서 코드를 짤 때는 주로, Comparable을 구현해서 활용하거나 Comparator를 생성했다. 다른 코드를 보니까 ㅜ 부족함이 많이 느껴진다. 풀이 - 작업 요청 시간이 지난 작업 중, 작업 시간이 짧은 것부터 처리하도록 한다. -> 작업 시간을 기준으로 우선순위 큐 사용. (대기하는 작업들의 대기 시간을 줄인다는 느낌) 개선점 1. 굳이 객체를 생성할 필요는 없었다. 개선점 2. compare 및 sorting 시에 람다 함수 활용. 더보기 나의 풀이... import java.util.PriorityQueue; import java.util.Comparator; class Solution { public int solution(int[][] jobs) { int size = jobs.len.. 코딩 테스트 2023. 2. 10. [코딩테스트] 프로그래머스 : 주식가격 문제 설명 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. [1, 2, 4, 3, 2] ->[4, 3, 1, 1, 0] 3초-> 4초 : 주식의 가격이 4-> 3으로 떨어진다. 즉, 1초간은 떨어지지 않았다고 볼 수 있으므로 1 4초-> 5초 : 3-> 2 => 1 [1, 5, 9, 3, 1] ->[4, 2, 1, 1, 0] 2초-> 4초 : 주식 가격 5-> 9-> 3, 즉, 2초간은 떨어지지 않았으므로 2 def solution(prices): answer = [] for i, j in enumerate(prices): ans = 0 for k in range(i+1, len(.. 코딩 테스트 2022. 12. 5. [코딩테스트] 프로그래머스 : 위장, Counter 사용법 의상의 조합을 찾는 문제. 상의 : 셔츠, 티, 아우터 하의 : 바지, 치마, 칠부 와 같이 있다면, 총 조합의 수는 ('상의 수'+1) * ('하의 수' + 1) -1 현재 python의 문법을 잘 모르기에 차근차근 풀어보았다. 매우 쉽긴하다.. 먼저, dict에 list로 담아서 풀어 보았다. def solution(clothes): size = len(clothes) dict = {} for i in range(size) : clothe = clothes[i] if clothe[1] in dict: dict[clothe[1]].append(clothe[0]) else: dict[clothe[1]] = [clothe[0]] answer = 1 for key in dict: print(dict[key].. 코딩 테스트 2022. 11. 30. 이전 1 다음 반응형