본문 바로가기

Algorithm/프로그래머스

(28)
[MySQL] [SUM, MAX, MIN] / 최댓값 구하기 [문제 설명]ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다.ANIMAL_INS 테이블 구조는 다음과 같으며,ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요.   [A] 내가쓴답">내가쓴답-- 1안 (MAX 이용 X)SELECT DATETIME AS 시간FROM ANIMAL_INSORDER BY DATETIME DESCLIMIT 1-- 2안 (MAX 이용 ..
[MySQL] [SELECT] / 조건에 부합하는 중고거래 댓글 조회하기 [문제 설명]다음은 중고거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과중고거래 게시판 첨부파일 정보를 담은 USED_GOODS_REPLY 테이블입니다.USED_GOODS_BOARD 테이블은 다음과 같으며BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS은게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다.USED_GOODS_REPLY 테이블은 다음과 같으며REPLY_ID, BOARD_ID, WRITER_ID, CONTENTS, CREATED_DATE는각각 댓글 ID, 게시글 ID, 작성자 ID, 댓글 내용, 작성일을 의미합니다.[문제]USED_GOODS_BOA..
[MySQL] [SELECT] / 가장 큰 물고기 10마리 구하기 [문제 설명]낚시앱에서 사용하는 FISH_INFO 테이블은 잡은 물고기들의 정보를 담고 있습니다.FISH_INFO 테이블의 구조는 다음과 같으며 ID, FISH_TYPE, LENGTH, TIME은각각 잡은 물고기의 ID, 물고기의 종류(숫자), 잡은 물고기의 길이(cm), 물고기를 잡은 날짜를 나타냅니다.단, 잡은 물고기의 길이가 10cm 이하일 경우에는 LENGTH 가 NULL 이며, LENGTH 에 NULL 만 있는 경우는 없습니다.[문제]FISH_INFO 테이블에서 가장 큰 물고기 10마리의 ID와 길이를 출력하는 SQL 문을 작성해주세요.결과는 길이를 기준으로 내림차순 정렬하고, 길이가 같다면 물고기의 ID에 대해 오름차순 정렬해주세요.단, 가장 큰 물고기 10마리 중 길이가 10cm 이하인 경우..
[MySQL] [SELECT] / 특정 형질을 가지는 대장균 찾기 [문제 설명]대장균들은 일정 주기로 분화하며, 분화를 시작한 개체를 부모 개체, 분화가 되어 나온 개체를 자식 개체라고 합니다.다음은 실험실에서 배양한 대장균들의 정보를 담은 ECOLI_DATA 테이블입니다.ECOLI_DATA 테이블의 구조는 다음과 같으며, ID, PARENT_ID, SIZE_OF_COLONY, DIFFERENTIATION_DATE,GENOTYPE 은 각각 대장균 개체의 ID, 부모 개체의 ID, 개체의 크기, 분화되어 나온 날짜, 개체의 형질을 나타냅니다.최초의 대장균 개체의 PARENT_ID 는 NULL 값입니다.[문제]2번 형질이 보유하지 않으면서 1번이나 3번 형질을 보유하고 있는 대장균 개체의 수(COUNT)를 출력하는 SQL 문을 작성해주세요.1번과 3번 형질을 모두 보유하고..
[Python] [코딩 기초 트레이닝] / 최빈값 구하기 [문제 설명]최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다.정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요.최빈값이 여러 개면 -1을 return 합니다.[제한사항]1. 0  def solution(array): answer = 0 return answer  - return answer if answer else -1   [A] (내가 쓴 답)def solution(array): count = [0] * (max(array) + 1) for i in array : count[i] += 1 m = 0 for c in count : if c == ..
[Python] [코딩 기초 트레이닝] / 문자열 밀기 [문제 설명]문자열 "hello"에서 각 문자를 오른쪽으로 한 칸씩 밀고 마지막 문자는 맨 앞으로 이동시키면 "ohell"이 됩니다.이것을 문자열을 민다고 정의한다면 문자열 A와 B가 매개변수로 주어질 때,A를 밀어서 B가 될 수 있다면 밀어야 하는 최소 횟수를 return하고밀어서 B가 될 수 없으면 -1을 return 하도록 solution 함수를 완성해보세요.[제한사항]1. 0  def solution(A, B): answer = 0 return answer  - return answer if answer else -1- a의 마지막 문자가 b에서 몇 번째에 있는가 (+1, 0부터 시작하기 때문에, 동일하면 0)- b에서 위치 - a에서 위치 (근데 같은 문자가 있을 수도 있음)- 배열이..
[Python] [코딩 기초 트레이닝] / 분수의 덧셈 [문제 설명]첫 번째 분수의 분자와 분모를 뜻하는 numer1, denom1, 두 번째 분수의 분자와 분모를 뜻하는 numer2, denom2가 매개변수로 주어집니다.두 분수를 더한 값을 기약 분수로 나타냈을 때 분자와 분모를 순서대로 담은 배열을 return 하도록 solution 함수를 완성해보세요.[제한사항]1. 0  def solution(numer1, denom1, numer2, denom2): answer = [] return answer  - 최대공약수 구하는 문제라는데 난 내 마음대로 해결- numer1 / denom1 + numer2 / denom2- import Fraction   [A] (내가 쓴 답)from fractions import Fraction as fdef so..
[Python] [코딩 기초 트레이닝] / OX퀴즈 [문제 설명]덧셈, 뺄셈 수식들이 'X [연산자] Y = Z' 형태로 들어있는 문자열 배열 quiz가 매개변수로 주어집니다.수식이 옳다면 "O"를 틀리다면 "X"를 순서대로 담은 배열을 return하도록 solution 함수를 완성해주세요.[제한사항]1. 연산 기호와 숫자 사이는 항상 하나의 공백이 존재합니다. 단 음수를 표시하는 마이너스 기호와 숫자 사이에는 공백이 존재하지 않습니다.2. 1 ≤ quiz의 길이 ≤ 103. X, Y, Z는 각각 0부터 9까지 숫자로 이루어진 정수를 의미하며, 각 숫자의 맨 앞에 마이너스 기호가 하나 있을 수 있고 이는 음수를 의미합니다.4. X, Y, Z는 0을 제외하고는 0으로 시작하지 않습니다.5. -10,000 ≤ X, Y ≤ 10,0006. -20,00..