프로그래머스
-
코딩테스트 연습> JOIN> 있었는데요 없었습니다SQL/Programmers 2021. 3. 10. 23:40
코딩테스트 연습 - 있었는데요 없었습니다 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블과 'ANIMAL_OUTS' 테이블이 주어지고 두 테이블은 ANIMAL_ID를 공유한다. 보호 시작일보다 입양일이 더 빠른 동물을 구해야 하므로 두 테이블을 INNER JOIN으로 묶은 다음 'ANIMAL_INS'의 DATETIME와 'ANIMAL_OUTS'의 DATETIME을 비교해서 조건에 일치하는 동물의 ..
-
코딩테스트 연습> 그래프 > 순위ALGORITHM/Programmers 2021. 3. 9. 18:46
코딩테스트 연습 - 순위 5 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 2 programmers.co.kr 문제설명: results 배열 안에 A,B 두 선수가 리스트로 담겨있고, A>B 앞에있는 숫자(A)가 뒤에오는 숫자(B)를 이겼다는 의미이다. 예제로 나와있는 results의 경우 [[4, 3], [4, 2], [3, 2], [1, 2], [2, 5]] 이므로, 4 > 3 4 > 2 3 > 2 1 > 2 2> 5 이고 이를 다시 정리해본다면 4 > 3 > 2 4 > 2 > 5 1 > 2 의 구조로 살펴볼 수 있다. 즉 win과 lose 딕셔너리를 생성한 다음 아래와 같은 구조로 값을 저장한다: 1. win에는 나(Key): 나에게 진사람들(Value) 2. lose에는..
-
코딩테스트 연습> 2019 카카오 개발자 겨울 인턴십> 크레인 인형뽑기 게임ALGORITHM/Programmers 2020. 10. 24. 10:04
코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 문제설명: 인형뽑기 통(?)이 board 배열로 주어지고, 뽑기 기계가 움직이는 방향을 담은 moves 배열이 주어진다. moves 방향에 따라 기계가 이동하면서 인형들을 뽑아 임시 바구니에 차곡차곡 담는다. 이때, 같은 모양의 인형이 2개가 만나면, 터지면서 사라진다. 이 때, 사라지는 인형들의 개수를 모두 더해 최종 ans로 return 하면 된다. [1차 시도] def solution(board, moves): ans = 0 basket = [] for i in moves: i-=1..
-
코딩테스트 연습> SELECT> 아픈 동물 찾기SQL/Programmers 2020. 9. 30. 23:45
코딩테스트 연습 - 아픈 동물 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블의 동물 아이디와 이름 중 아픈 동물을 찾아 조회해야 하므로 WHERE절을 사용해 'Sick'한 동물들을 선택해야 한다. 마지막으로 ID 순(ORDER BY)으로 정렬해서 출력하면된다. [1차 시도] SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE INTAKE_CONDITION='Si..
-
코딩테스트 연습> JOIN> 없어진 기록 찾기SQL/Programmers 2020. 9. 28. 22:44
코딩테스트 연습 - 없어진 기록 찾기 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블과 'ANIMAL_OUTS' 테이블이 주어지고 두 테이블은 ANIMAL_ID를 공유한다. 입양을 간 기록은 있는데, 보호소에 들어온 기록이 없는 동물을 조회해야 하므로 ANIMAL_OUTS에는 있지만, ANIMAL_INS에는 없는 동물의 ID와 NAME을 조회하면 된다. [1차 시도] SELECT O.ANIMAL_..
-
코딩테스트 연습> 2020 카카오 인턴십> 키패드 누르기ALGORITHM/Programmers 2020. 9. 10. 23:43
코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 문제설명: 키패드에 입력할 번호들의 배열 numbers가 주어지고 1,4,7은 왼손으로, 3,6,9는 오른손으로, 그리고 나머지 2,5,8,0은 현재 위치의 왼손과 오른손 중 가까운 거리의 손가락으로 누르면 된다. 만약 거리가 같다면, hand에 주어진 손가락으로 누르면되고, 키패드 번호를 누를때마다, 현재 누른 손가락의 위치를 갱신해주면 된다. [1차..
-
코딩테스트 연습> GROUP BY> 고양이와 개는 몇 마리 있을까SQL/Programmers 2020. 8. 27. 09:47
코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 문제설명: 'ANIMAL_INS' 테이블의 ANIMAL_TYPE 중 CAT과 DOG의 개수가 각각 몇 마리인지 count 하는 문제이다. 이때 고양이를 개보다 먼저 조회하라고 했으므로 맨 마지막에 ORDER BY를 쓰면 된다. [1차 시도] SELECT ANIMAL_TYPE, COUNT(*) AS 'count' FROM ANIMAL_INS ..
-
코딩테스트 연습> 탐욕법(Greedy)> 구명보트ALGORITHM/Programmers 2020. 8. 14. 07:00
코딩테스트 연습 - 구명보트 무인도에 갇힌 사람들을 구명보트를 이용하여 구출하려고 합니다. 구명보트는 작아서 한 번에 최대 2명씩 밖에 탈 수 없고, 무게 제한도 있습니다. 예를 들어, 사람들의 몸무게가 [70kg, 50kg, 80kg, 5 programmers.co.kr 문제설명: people로 주어지는 배열에 사람들의 몸무게가 주어지고, limit 변수로 구명보트의 제한 무게가 주어진다. 구명보트 1개는 한 번에 최대 2명씩 태울 수 있으므로 모든 사람을 구출하기 위해 필요한 구명보트의 최소개수를 구하는 문제이다. [1차 시도] def solution(people, limit): ans = 0 people.sort(reverse=True) start = len(people)-1 for i in ran..