문제 설명문제예시나의 풀이문제 접근 방법"프로그래머스 - 3월에 태어난 여성 회원 목록 출력하기" 문제는 식당 리뷰 사이트의 회원 정보를 담은 MEMBER_PROFILE 테이블이 주어질 때 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성하는 문제입니다. 문제의 핵심은 생년월일이 담겨져있는 DATE_OF_BIRTH 컬럼을 3월로 포맷팅하는 것 입니다. 이 때 전화번호가 NULL인 경우가 존재하기 때문에 전화번호가 NULL인 경우에는 IS NOT NULL로 제외를 해야합니다.전체 코드select MEMBER_ID,MEMBER_NAME,GENDER,DATE_FORMAT(DATE_OF_BIRTH, "%Y-%m-%d") AS DATE_OF_BIRTHfrom MEMBER_PRO..
Coding Test/프로그래머스

문제 설명문제예시 나의 풀이문제 접근 방법"프로그래머스 - 평균 일일 대여 요금 구하기" 문제는 문제의 제목그대로 평균 일일 대여 요금을 구하는 문제입니다. 주어진 자동차 종류에는 세단, SUV, 승합차, 트럭, 리무진이 있으며, 이 중 SUV 차량을 선택한 후 daily_fee 컬럼의 평균을 구하면 됩니다. 이 때 평균이므로 소수점이 존재하는 데 평균 일일 대여 요금은 소수 첫 번째 자리에서 반올림해야합니다. 즉, 정확한 소수점을 구하기 위해서 MySQL의 AVG()함수와 ROUND()함수를 같이 사용해야합니다. [MySQL] AVG()와 ROUND()로 정확한 평균 구하기AVG() 함수란❓MySQL의 AVG() 함수는 데이터베이스에서 평균값을 계산하는 필수적인 집계 함수입니다.기본 문법SELECT ..

문제설명입력 & 출력나의 풀이문제 접근 방법"프로그래머스 - 1차 캐시" 문제는 캐시 크기를 측정하는 프로그램을 작성하는 것 입니다. 문제에서 나와 있듯이 LRU(Least Recently Used) 알고리즘을 사용하여 풀이하면 됩니다. 문제의 핵심은 LRU 알고리즘의 특성인 캐시가 가득 찼을 때 가장 오랫동안 사용되지 않은 항목을 제거하는 방식을 생각하면 어렵지 않게 풀 수 있습니다. 물론 순서를 유지하는 LinkedHashMap 같은 자료구조를 사용하면 O(1)로 처리할 수 있으므로 성능이 더 좋아질 수 있지만, ArrayList 자료구조를 사용해서도 충분히 구현할 수 있습니다. [JAVA] ArrayList 알아보기 (동적 배열)Java에서는 기본적으로 여러 데이터를 다룰 때 배열을 사용합니다. ..
문제설명입력 & 출력나의 풀이이번 "프로그래머스 - 피로도"문제는 다음과 같은 조건을 만족해야 하는 문제입니다.피로도: 어떤 던전을 탐험하려면 최소 필요 피로도와 소모 피로도가 있습니다.최소 필요 피로도: 해당 던전을 탐험하기 위해 필요한 최소 피로도 소모 피로도: 해당 던전을 탐험하면 소모되는 피로도 목표: 주어진 k(현재 피로도)와 던전 정보가 있을 때, 최대 몇 개의 던전을 탐험할 수 있는지를 구하는 것입니다.전체 코드 이 문제는 완전 탐색으로 해결할 수 있지만, DFS를 활용하면 풀이 과정이 더 간단하고 명확해집니다 문제를 해결하기 위해 방문 여부를 확인하는 배열(visited)과 최대 탐험 가능한 던전 수(max)를 선언했습니다. 두 변수는 탐색 과정에서 자주 초기화되기 때문에 static으로 ..