본문 바로가기

코딩테스트 준비52

MySQL 문법 정리 MYSQL 문법정리 코딩테스트 직전에 SQL 문법을 훑어보기 좋게 정리하였다. 꾸준히 업데이트 예정이다. ◆ DISTINCT : 중복제거 SELECT count(DISTINCT NAME) ... - NAME의 개수를 세지만, 중복을 제거하여 count한다. ◆ SET : 변수생성 SET @VAR := 1; SELECT (@VAR := @VAR + 1) .... - VAR 변수 선언하고 초기값을 1로 설정 - VAR 변수에 1씩 더해서 결과를 출력 ◆ CASE: 조건문 SELECT (CASE WHEN 조건식1 THEN 결과1 (CASE WHEN 조건식2 THEM 결과2 ELSE 나머지 결과 END) - 조건식 1에 해당하면 결과1을 출력, 조건식 2에 해당하면 결과 2를 출력, 그 외에는 나머지 결과 출력.. 2022. 3. 3.
[프로그래머스 SQL 고득점 KIT] 문제 풀이2 (MySQL) 단계 JOIN 1. 없어진 기록 찾기 SELECT O.ANIMAL_ID, O.NAME FROM ANIMAL_OUTS O LEFT OUTER JOIN ANIMAL_INS I ON O.ANIMAL_ID = I.ANIMAL_ID WHERE I.ANIMAL_ID IS NULL ORDER BY O.ANIMAL_ID; 입양 기록은 그대로 있으니까 일단 입양기록테이블을 왼쪽에 두고 보호소 기록 테이블과 Left Outer Join을 한다. 입양 기록 A, B, E | 보호소 기록 B, C, E LEFT OUTER JOIN = (A, null), (B, B), (E,E)가 남게 된다. 잃어버린 기록은 보호소 기록에서 null로 조인된 행이다. 따라서 조건절에 I.ANIMAL_ID IS NULL 을 작성했다. 2. 있었.. 2022. 3. 3.
[프로그래머스 SQL 고득점 KIT] 문제 풀이 (MySQL) https://programmers.co.kr/learn/courses/30/parts/17042 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 1. 모든 레코드 조회하기 간단하게 모든 레코드를 조회하는 문제. SQL을 공부했다면 누구나 바로 풀 수 있는 문제다! SELECT ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID ASC; 오름차순으로 정렬을 하는 경우, ORDER BY는 오름차순이 디폴트라 ASC는 .. 2022. 3. 2.
백준 10026. 적록색약 (BFS) www.acmicpc.net/problem/10026 10026번: 적록색약 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록) www.acmicpc.net 문제제목 : 적록색약 문제난이도 : 골드5 문제유형 : BFS, DFS 문제 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나뉘어져 있는데, 구역은 같은 색으로 이루어져 있다. 또, .. 2021. 4. 9.
백준 1759. 암호 만들기 (백트래킹으로 다시 풀어보기) www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째 줄에 두 정수 L, C가 주어진다. (3 ≤ L ≤ C ≤ 15) 다음 줄에는 C개의 문자들이 공백으로 구분되어 주어진다. 주어지는 문자들은 알파벳 소문자이며, 중복되는 것은 없다. www.acmicpc.net 문제제목 : 암호 만들기 문제유형 : 브루트포스, 조합, 백트래킹 (해결 방법을 얻을 때까지 모든 가능성을 확인해서 찾는 방법) 문제난이도 : 골드 5 문제 바로 어제 최백준 조교가 방 열쇠를 주머니에 넣은 채 깜빡하고 서울로 가 버리는 황당한 상황에 직면한 조교들은, 702호에 새로운 보안 시스템을 설치하기로 하였다. 이 보안 시스템은 열쇠가 아닌 암호로 동작하게 되어 있는 시스템이다. 암호는 서로 다른 L개의 알.. 2021. 4. 8.
백준 2309. 일곱 난쟁이 (브루트포스) www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 문제제목 : 일곱 난쟁이 문제유형 : 브루트포스 문제난이도 : 브론즈2 문제 왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다. 아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기.. 2021. 4. 8.