CodingTest Practice/Programmers 33

프로그래머스 : 우유와 요거트가 담긴 장바구니 (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/62284 코딩테스트 연습 - 우유와 요거트가 담긴 장바구니 CART_PRODUCTS 테이블은 장바구니에 담긴 상품 정보를 담은 테이블입니다. CART_PRODUCTS 테이블의 구조는 다음과 같으며, ID, CART_ID, NAME, PRICE는 각각 테이블의 아이디, 장바구니의 아이디, 상품 종류, 가 programmers.co.kr 우유를 담은 장바구니를 저장하는 테이블과 요거트를 담은 장바구니를 저장하는 테이블을 카드 아이디가 같은 조건으로 INNER JOIN 해서 구했다. 정답 코드 SELECT M.CART_ID AS CART_ID FROM (SELECT CART_ID FROM CART_PRODUCTS WH..

프로그래머스 : 헤비 유저가 소유한 장소 (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/77487 코딩테스트 연습 - 헤비 유저가 소유한 장소 PLACES 테이블은 공간 임대 서비스에 등록된 공간의 정보를 담은 테이블입니다. PLACES 테이블의 구조는 다음과 같으며 ID, NAME, HOST_ID는 각각 공간의 아이디, 이름, 공간을 소유한 유저의 아이디를 programmers.co.kr SQL 고득점 키트에서 GROUP BY 쓸 때 딱히 문제가 없었는데 이번에는 "not a GROUP BY expression"이라는 에러를 처음으로 마주했다. 그래서 찾아보니 SELECT 절에는 GROUP BY 에 언급된 절이거나 집계함수만 들어갈 수 있다고 한다. (왜 이제야 안거지? 내일 당황할 뻔...) ht..

프로그래머스 : 정수 삼각형 (C++, Lv.3, DP_다이나믹 프로그래밍)

https://programmers.co.kr/learn/courses/30/lessons/43105?language=cpp 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr 원래 'N으로 표현' 이란 문제를 먼저 풀고 싶었는데 그건 도저히 내 머리로는 아직 모르겠다.... DP는 너무 어렵다.... 소스코드 #include #include #include using namespace std; int height; vector vertex; vector tri; void dfs(int depth) { //모든 행을 다 담은 경우 return if(depth == height) retur..

프로그래머스 : N-Queen (C++, Lv.3, 백트래킹)

https://programmers.co.kr/learn/courses/30/lessons/12952?language=cpp 코딩테스트 연습 - N-Queen 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 programmers.co.kr 학부시절 인공지능 수업에서 한 번 다뤄봤던 문제여서 이해하는 데에는 쉬웠다. 근데 어떻게 대각선의 범위를 정해야 하는가가 첫 고민이었고 해당 좌표에 두지 못한다고 체크를 어떻게 해야 하는지가 두 번째 고민이었다. 첫 번째 고민의 경우 해당 좌표의 아래 depth에 해당하는 좌표들에 대해서만 체크 표시를 했다. (23~35li..

프로그래머스 : 배달 (C++, Lv.2, 다익스트라)

https://programmers.co.kr/learn/courses/30/lessons/12978 코딩테스트 연습 - 배달 5 [[1,2,1],[2,3,3],[5,2,2],[1,4,2],[5,3,1],[5,4,2]] 3 4 6 [[1,2,1],[1,3,2],[2,3,2],[3,4,3],[3,5,2],[3,5,3],[5,6,1]] 4 4 programmers.co.kr 다익스트라에 대해 공부하고 조금 이따가 풀었는데 그새 까먹어서 푸는데 애좀 먹었다... https://m.blog.naver.com/ndb796/221234424646 23. 다익스트라(Dijkstra) 알고리즘 다익스트라(Dijkstra) 알고리즘은 다이나믹 프로그래밍을 활용한 대표적인 최단 경로(Shortest Path) 탐... b..

프로그래머스 : String, Date (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/59046?language=oracle 코딩테스트 연습 - 루시와 엘라 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr IN ( ) 을 이용해 NAME의 값이 괄호 안에 있는 값과 같으면 조회 -- 코드를 입력하세요 SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE NAME IN (..

프로그래머스 : IS NULL (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/59039?language=oracle 코딩테스트 연습 - 이름이 없는 동물의 아이디 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID; https://programmers.co.kr/learn/cou..

프로그래머스 : GROUP BY (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/59040?language=oracle 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr -- 코드를 입력하세요 SELECT ANIMAL_TYPE,COUNT(*) as count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE; https://p..

프로그래머스 : JOIN (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/59042?language=oracle 코딩테스트 연습 - 없어진 기록 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 입양테이블은 왼쪽에 두고 입소 테이블과 LEFT JOIN을 한 후, 입소 테이블의 ID가 비어있는 컬럼을 조회 -- 코드를 입력하세요 SELECT OUTS.ANIMAL_ID AS ANIMAL_ID, OUTS.NAME AS N..

프로그래머스 : SUM,MAX,MIN (SQL, ORACLE)

https://programmers.co.kr/learn/courses/30/lessons/59415?language=oracle 코딩테스트 연습 - 최댓값 구하기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr DATE 타입도 기본적인 연산이나 집계함수가 가능 -- MAX를 사용하는 방법 SELECT MAX(DATETIME) FROM ANIMAL_INS; -- 인라인뷰로 조회하는 방법 SELECT * FROM ( SELECT DATET..