[프로그래머스 알고리즘 고득점 Kit][힙(Heap)][Java] 디스크 컨트롤러
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42627 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 작업을 요청 시각 기준으로 정렬한 뒤, 현재 시각까지 요청된 작업만 우선순위 큐에 넣는다.우선순위 큐에서는 다음 순서로 작업을 선택한다.소요 시간 → 요청 시각 → 작업 번호 전체 흐름은 다음과 같다.작업을 요청 시각순으로 정렬→ 대기 큐가 비었다면 다음 요청 시각까지 이동→ 현재 시각까지 요청된 작업을 모두 대기 큐에 추가→ 우선순위가 높은 작업 실행→ 종료 시각 - 요청 시각을 반환 시간에 누적→ 모든 작업의 평균 반환 시간 계산 waitingInd..
[프로그래머스][MySQL] 최솟값 구하기
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/59038 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr시간 중 최소select min(datetime)from animal_ins 오름차순 정렬 후 1번select datetimefrom animal_insorder by datetime asclimit 1;
[프로그래머스 알고리즘 고득점 Kit][그리디][Java] 조이스틱
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42860 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 1. 각 글자의 위 아래를 먼저 구한다. -> 이건 위나 아래를 눌러서 비교함2. 좌우 움직임 최소를 구한다. 1) A구간을 최대한 피하는게 이득 2) A구간이 2개이상이라면 구간 사이 처리해야할 글자가 생기기에 지나가야할 A구간은 무조건 생김 3) 그러면 최소 하나의 A구간은 피해도 됨 4) 피하지 않고 그냥 직진하는게 이득일 수도 있음 5) 직진하는 값과 피하는 것을 비교후 최소값을 구함 6) 피하는 것은 시작점을 기준으로 오른쪽으로 갔다가 왼쪽..
[프로그래머스][MySQL] 중복 제거하기
·
데이터베이스/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/59408 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krselect count(*) as countfrom (select namefrom animal_inswhere name is not nullgroup by name) as name_groupWHERE 절로 NULL 이름 제거→ GROUP BY로 중복된 이름을 하나로 묶기→ FROM 절의 서브쿼리에 별칭 필수(name_group) 지정→ 바깥 쿼리에서 결과 행의 개수 계산
[프로그래머스 알고리즘 고득점 Kit][스택/큐][Java] 주식가격
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42584 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 스택에는 아직 가격이 떨어진 시점을 찾지 못한 인덱스를 저장한다.현재 가격이 스택 맨 위 인덱스의 가격보다 낮다면, 해당 주식은 현재 시점에 처음 가격이 떨어진 것이다.answer[lastIdx] = i - lastIdx; 가격이 떨어진 인덱스를 계속 제거하기 때문에 스택의 가격은 아래에서 위로 비감소 순서를 유지한다.전체 순회 후 스택에 남은 인덱스는 끝까지 가격이 떨어지지 않은 경우이므로 마지막 시점까지의 시간을 계산한다.answer[idx] = p..
[프로그래머스 알고리즘 고득점 Kit][스택/큐][Java] 다리를 지나는 트럭
·
알고리즘 & 자료구조/문제 풀이
https://school.programmers.co.kr/learn/courses/30/lessons/42583 프로그래머스SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 핵심트럭은 1초에 1칸씩 이동 (지문엔 명시 안 되어 있고, 예시 표로 유추해야 함)트럭 1대가 다리를 완전히 통과하는 데 정확히 bridge_length초 소요다리 위 트럭들의 무게 합이 weight를 넘으면 안 됨 (대기 중인 트럭 무게는 무시)풀이 전략큐 2개로 관리: waitingQ(아직 다리에 안 오른 트럭), bridgeQ(현재 다리 위 트럭, {진입시각, 무게} 저장)time을 1씩 증가시키며 매초 두 단계를 순서대로 체크내리기: br..