목록프로그래머스 (105)
Welcome! Everything is fine.
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 직접 그림을 그려가며 푸니 바로 이해되는 문제였다. 그러나 Math.min()과 Math.max()를 사용해 최솟값과 최댓값을 구하는 과정에서 힌트를 찾아보았다. 머리로는 알아도 막상 코드로 구현하려니 바로바로 되진 않았다. 바탕화면에 파일이 예시처럼 있다면, 드래그 하는 시작점은 (가장 위쪽, 가장 왼쪽) 인 (0, 1) 이고, 끝점은 (가장 아래쪽, 가장 오른쪽) 인 (3, 4) 이다. 0 1 2 3 4 5 1 # 2 # 3 # 정리하면, wallpaper 배열을 이중 for문으로 돌며 ..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 카드 뭉치의 순서대로 단어 배열을 만들 수 있는지 확인하는 문제이다. 나는 ArrayList 2개를 이용하여 풀었는데, 다른 사람들의 코드를 보니 그냥 주어진 배열로도 풀 수 있고, 큐를 사용한 답안도 있었다. 내가 푼 방식에 대해 설명하자면, ArrayList를 2개 만들고 각각의 리스트에 cards1, cards2 배열을 옮겨 담았다. 그리고나서 goal 배열을 돌면서 goal[i] 번째 요소가 cards1과 cards2에 순서대로 있는지 확인한다. 여기서 for문을 2개를 만들어 각각 ..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 제출한 오답 많은 것을 빼버린 오답..조건을 안적고 제출해서 틀렸다. 2022년 1월이라는 조건과 AUTHOR 테이블의 ID와 AUTHOR_ID 테이블의 ID가 같은 경우, BOOK 테이블의 ID와 BOOK_ID 테이블의 ID가 같은 경우를 넣어주어야 정답이다. SELECT A.AUTHOR_ID, A.AUTHOR_NAME, B.CATEGORY, SUM(B.PRICE * S.SALES) AS TOTAL_SALES FROM BOOK B, AUTHOR A, BOOK_SALES S GROUP BY A.A..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 헤비 유저를 찾기 위해 서브쿼리를 이용해 HOST_ID 가 HOST_ID가 두 번 이상 나왔을 때의 HOST_ID에 속한다면 조회하는 코드를 작성하였다. JOIN이나 WITH 절을 이용해 풀 수 있는 방법도 있다. SELECT ID, NAME, HOST_ID FROM PLACES WHERE HOST_ID IN (SELECT HOST_ID FROM PLACES GROUP BY HOST_ID HAVING COUNT(HOST_ID) >= 2) ORDER BY ID
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 평균을 구하는 AVG 함수와 소수점을 반올림 하는 ROUND 함수를 사용해 평균 연봉을 내고, DEPT_ID로 묶어 부서별로 평균연봉을 구하도록 했다. 평균을 구해 소수점을 반올림하는 문제가 꽤 나오니 숙지해두는 것이 좋을 것 같다! SELECT DEPT_ID, DEPT_NAME_EN, ROUND(AVG(SAL), 0) AS AVG_SAL FROM HR_DEPARTMENT JOIN HR_EMPLOYEES USING(DEPT_ID) GROUP BY DEPT_ID ORDER BY AVG_SAL ..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 - 배열 사용 나는 이 문제를 그냥 배열을 이용해 풀었지만, 다른 사람들의 코드를 보니 우선 순위 큐를 사용한 사람들이 많았다. 실제로 배열을 사용한 코드와 우선 순위 큐를 사용한 코드를 비교해보니 우선 순위 큐가 더 빨랐다. 이번 문제를 통해 우선 순위 큐를 사용하는 방법을 공부해보는 것이 좋겠다. 내가 처음 작성한 답안은 배열과 정렬을 이용하였다. 먼저 명예의 전당에 들어가는 점수를 저장하는 hallOfFameScores 배열과 명예의 전당의 최하위 점수를 저장하는 answer 배열을 만..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 풀이 terms 배열만 HashMap에 넣어놓고 고민만 하다 끝나버린 문제.. 날짜나 시간을 다루는 게 아직 익숙하지 않아서 많이 풀어봐야할 것 같다. 내가 생각했던 풀이는 다음과 같다. terms 배열을 HashMap에 저장한다. privacies 배열을 돌면서 개인정보 수집일자와 약관 종류를 불러온다. 개인정보 수집일자 + 약관 종류에 따른 유효기간의 값이 오늘 날짜보다 작거나 같으면 유효기간이 지난 것이므로 파기해야한다. 파기해야 할 개인정보의 번호(인덱스)를 리스트에 추가한다. 날짜를 년,..
📌 문제 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📌 정답 이번 문제는 ROUND, AVG, DATEDIFF 등의 함수를 잘 쓸 수 있는지 확인하는 문제인 것 같다. ROUND 함수로 소수점을 반올림 하고, AVG 함수로 평균을 구하고, DATEDIFF 함수로 날짜의 차이를 계산할 수 있으면 쉽게 풀 수 있는 문제였다. SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE) + 1), 1) AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP ..