본문 바로가기

Algorithm

(175)
[SQL] 서울에 위치한 식당 목록 출력하기 https://school.programmers.co.kr/learn/courses/30/lessons/131118 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 1. 리뷰 테이블에 대해 식당 테이블을 join한다. 2. round와 avg를 이용해서 소수점 두 번째 자리와 평균을 낸다. 3. 식당 번호를 기준으로 group by를 한다. 4. group by에 조건을 추가하기 위해 having에 like로 주소에 '서울'에 해당하는 데이터를 선정한다. 5. 조건에 맞게 정렬한다. 2. 정답코드 select B.REST_ID, A.REST_..
[SQL] 오프라인/온라인 판매 데이터 통합하기 https://school.programmers.co.kr/learn/courses/30/lessons/131537 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 select 문 두개를 union all 문법을 이용해서 하나의 테이블로 합쳤다, 2. 정답코드 select DATE_FORMAT(A.SALES_DATE, "%Y-%m-%d") AS SALES_DATE, A.PRODUCT_ID, A.USER_ID, A.SALES_AMOUNT from ONLINE_SALE as A where YEAR(A.SALES_DATE) = '2022' and ..
[2022 KAKAO BLIND RECRUITMENT] 주차 요금 계산 https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 단순? 아니 그냥 시뮬레이션 문제이다. 본인은 stack과 딕셔너리를 활용해서 해결했다. 디버깅때매 1시간 10분 소요;; 1. 일단 차량 번호에 해당하는 입차, 출차를 딕셔너리에 추가 2. 차량들을 For문 돌려서 각 차량이 주차장에 있었던 시간(분)을 total_time에 저장 3. 주차장에 있었던 시간이 기본 시간보다 적은 경우는 기본 요금, 아니면 기본요금 + 특정 분당 추가..
[2022 KAKAO BLIND RECRUITMENT] k진수에서 소수 개수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결 방법 중요한 포인트는 n을 k진수로 변환하는 코드와 소수인지 아닌지 판별하는 코드이다. 1. 주어진 n을 k진수로 변환한다. 2. 변환했으면, 0 주위에 있는 숫자가 소수인지 판별해야한다. 3. 조건을 보면 그냥 0을 제외한 모든 숫자를 검사하면 된다. 4. 각 숫자가 소수인지 판별한다. 5. 소수인지 판별 할때, int(n ** 0.5)로 범위를 줄이지 않으면 1번 테스트 케이스에서 ..
[SQL] 3월에 태어난 여성 회원 목록 출력하기 https://school.programmers.co.kr/learn/courses/30/lessons/131120 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결 방법 3가지 조건을 충족해야한다. 1. 생일이 3월이다. MONTH(DATE_OF_BIRTH)=3 2. 성별이 여성이다. GENDER='W'- 전화번호가 NULL 아니다. 3. TLNO IS NOT NULLMEMBER_ID 오름차순 정렬 2. 정답코드 select MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, '%Y-%m-%d..
[2018 KAKAO BLIND RECRUITMENT] [1차] 뉴스 클러스터링 https://school.programmers.co.kr/learn/courses/30/lessons/17677 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결 방법 꽤 헤맸지만 그렇게 어렵다고 느낄만한 문제는 아니었다. 확실히 알고리즘 한달차였을 땐 레벨 2라도 카카오 문제에서 엄청 막히고 답이 안보였는데, 두달 가까이 꾸준하게 하다보니 두렵지 않고 좋은 문제네 라는 느낌이 는다. 디버깅 포함 1시간 10분 정도 걸렸다. 1. 주어진 문자열을 for문 돌린다. 2. for문을 돌면서 알파벳 문자열을 제외한 두 쌍을 새로운 배열로 만든다. 해당..
[2019 카카오 개발자 겨울 인턴십] 튜플 https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 해결방법 문제는 간단했다. ssplit을 어떻게 활용할지만 생각하면 된다. s 문자열은 항상 '{{'로 시작하고 '}}'로 끝난다. 그렇기 때문에 리스트 슬라이스를 이용해서 시작과 끝 부분을 지우고, '},{을 split 하여서 구간을 나누어 준다. sort를 배열 길이로 정렬해주고 answer에 해당 값이 들어가있는지 확인하면서 append한다. 2. 정답코드 def solution(s):..
[SWEA] D.3 0/1 Knapsack https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWBJAVpqrzQDFAWr SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 해결방법 DP로 해결하였는데 DP에 대해서 아직 숙달이 안되었다보니 다른 분들의 풀이를 참고했다. 참고로 D3에 햄버거 문제와 마찬가지로 같은 로직의 DP 알고리즘을 사용하면 햄버거 문제와 똑같이 해결할 수 있다. 다만 햄버거 문제처럼 재귀를 이용해서 모든 경우를 재귀로 도는 방식은 시간 초과가 나온다. https://ljw538.tistory.com/33 위의 블로그에서 어떻게 DP가 작동되..