1. 더 맵게
list를 heap 자료구조로 바꾸면 heap은 오름차순 정렬로 자동으로 해준다.
heap[0]을 하면 인덱스 값을 쓸 수 있다. pop이 아닌 점을 알아야한다.
해당 요소가 K보다 작을때만 돌려야하므로
그 때만 while을 쓴다.
힙 자료구조 내 요소가 1개고 그것이 K보다 작다면 모든 음식의 스코빌 지수를 K이상으로 만들 수 없는 경우므로 -1을 리턴한다.
그 외에는 카운팅을 리턴한다.
2. 디스크 컨트롤러
위 처럼 했다가 계속 10만 나와서
코드가 잘못되었다는걸 깨달았다.
그래서 다른 사람의 풀이를 봤다.
값을 변경시키기 위해 000으로 초기화해놓는다.
start = -1: 루프 시작 시 현재 요청이 없으므로 현재 요청의 시작 시간을 -1로 초기화한다.
바로 이전에 작업을 완료한 시간(start)보다 크고 현재 시점(now)보다 작으면 현재 시점에서 처리할 수 있는 작업을 찾는다.
처리할 작업이 있는 경우에는 현재 시간을 꺼내서 start에 now를 넣고
Now를 heap 요소의 [0]으로 치환한다.
위를 반복한다.
처리할 작업이 있는때와 없는 때를 찾아서 +1로 계속 start 값을 갱신시켜주는 것이 중요한 것이었다.
3. 이중우선순위큐
위 문제보다는 쉬웠지만,
시간을 초과해서 다른 사람 풀이를 보았다.
그냥 주어진 문제를 잘 이해했으면 3단계까지는 아닌 문제였다.(nlargest 라는 것만 알고 있었으면..?)
sql 문제
1. 상품 별 오프라인 매출 구하기
해설
원하는 컬럼을 테이블.컬럼으로 가져온다.
이유는 기본키로 연결되어 있기 때문에.
select에서 sum을 한 이유는 sum 한 컬럼 여러개를 가져오고 싶었기 때문
1개만 가지고 오고 싶었다면, from 뒤에서 sum을 하면 됨
join문을 사용해서 테이블의 기본키가 연결되어 있다는 것을 명시
그리고 상품코드별 ~~ 합계이므로 상품코드를 기준으로 group화 시켜준다.
컬럼 지정할때 만들었던 SALES라는 컬럼명으로 내림차순 정렬을 해준다.
'코테공부' 카테고리의 다른 글
프로그래머스 55일차 - 완전탐색 문제 모음(2) & SUM, MAX, MIN SQL 문제 모음 (0) | 2023.04.13 |
---|---|
프로그래머스 54일차 - 완전탐색 문제 모음(1) & IS NULL SQL 문제 모음 (0) | 2023.04.12 |
프로그래머스 53일차 - 해시 문제 모음 & 가격이 제일 비싼 식품의 정보 출력하기 (0) | 2023.04.10 |
프로그래머스 52일차 - 루시와 엘라 찾기 & 진료과별 총 예약 횟수 출력하기 (0) | 2023.04.09 |
프로그래머스 51일차 - 정렬 문제 모음 & SQL 문제 최솟값 구하기 (0) | 2023.04.08 |