본문 바로가기

Coding Test

(9)
[프로그래머스] 역순정렬하기/아픈동물찾기/어린동물찾기/동물의아이디이름/여러기준으로정렬하기/상위n개레코드 - SQL (문제 공통 지문)ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.  역순 정렬하기문제설명더보기동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 ANIMAL_ID 역순으로 보여주세요. SQL을 실행하면 다음과 같이 출력되어야 합니다.✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이처음 풀어보는 쿼리문제...ANIMAL_ID으로..
[프로그래머스] 두 개 뽑아서 더하기 - Java 문제설명 더보기 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. [제한사항] numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. ✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이 내가 이해한대로 문제를 요약해보자면, 📌정수 배열 numbers의 각 원소를 더한 값을 배열에 담기(중복 값 제거) 이다. import java.util.ArrayList; import java.util.Arrays; import java.util.List; class Solution { public in..
[프로그래머스] 최소직사각형 - Java 문제설명 더보기 명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다. 아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다. 명함 번호 가로 길이 세로 길이 1 60 50 2 30 70 3 60 30 4 80 40 가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다...
[프로그래머스] 숫자 문자열과 영단어 - Java 문제설명 더보기 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다. 1478 → "one4seveneight" 234567 → "23four5six7" 10203 → "1zerotwozero3" 이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요. 참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다. 숫자 영단어 0 zero 1 one 2 two 3 three 4 four 5 five 6 six..
[프로그래머스] 내적 - Java 문제설명 더보기 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요. 이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1] 입니다. (n은 a, b의 길이) [제한사항] a, b의 길이는 1 이상 1,000 이하입니다. a, b의 모든 수는 -1,000 이상 1,000 이하입니다. ✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이 설명이 잘되어있어서 보자마자 딱 이해가 되는 문제였다. 📌배열 a,b의 같은 위치의 원소를 곱하고 그 값들을 다 더하라 import java.util.Stack; class Solution { public static int soluti..
[프로그래머스] 없는 숫자 더하기 - Java 문제설명 더보기 0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요. [제한사항] 1 ≤ numbers의 길이 ≤ 9 0 ≤ numbers의 모든 원소 ≤ 9 numbers의 모든 원소는 서로 다릅니다. ✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이 이런 방법은 너무 꼼수인가 싶기도 했지만... 바로 생각난 방법이라 꼼수(?)대로 풀었다! 📌0~9까지의 합 - 주어진 숫자들의 합 주어진 숫자 중 없는 숫자를 구하는 게 아닌 그 숫자들의 합을 구하는 것이라 이렇게 풀면 되지않을까 생각했다.. import java.util.Stac..
[프로그래머스] 문자열 내 p와 y의 개수 - Java 문제설명 더보기 대문자와 소문자가 섞여있는 문자열 s가 주어집니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 return 하는 solution를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 단, 개수를 비교할 때 대문자와 소문자는 구별하지 않습니다. 예를 들어 s가 "pPoooyY"면 true를 return하고 "Pyy"라면 false를 return합니다. [제한사항] 문자열 s의 길이 : 50 이하의 자연수 문자열 s는 알파벳으로만 이루어져 있습니다. ✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이 내가 이해한대로 문제를 요약해보자면, 📌문자열 s에 있는 'p'와 'y'의 개수 비교 📌대소문자 구별x 이다. 비교적 간단..
[프로그래머스] 완주하지 못한 선수 - Java 문제설명 더보기 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. [제한사항] 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. ✔ 문제를 보고싶으신 분은 더보기를 눌러주세요! 풀이 내가 이해한대로 문제를 ..