썸네일 [영진닷컴 X BDA SQLD 스터디] 3주차 3주차의 학습 목표는2과목 SQL 기본 및 활용 - SQL 기본 학습 (104p ~ 141p)이었습니다.  필수적으로 암기해야 할 부분은 아래 표로 정리해 두었고,집합 연산: 여러 SQL 결과를 연결해 하나의 형태로 결합하는 문법SELECT COL1 FROM A UNIONSELECT COL1 FROM B;위 쿼리 결과와 아래 쿼리 결과를 합집합 처리(중복 제거)SELECT COL1 FROM A MINUSSELECT COL! FROM BORDER BY COL1;위 쿼리 결과집합을 아래 쿼리 결과집합을 차집합(중복 제거)집합연산자를 쓸 땐 ORDER BY는 항상 마지막에 쓰여야 함→위아래 합친 결과에 대해 ORDER BY 실행 SELECT 부서ID, SUM(연봉) FROM 직원 GROUP B..
썸네일 [동적계획법] N으로 표현 🔎문제아래와 같이 5와 사칙연산만으로 12를 표현할 수 있습니다.12 = 5 + 5 + (5 / 5) + (5 / 5)12 = 55 / 5 + 5 / 512 = (55 + 5) / 55를 사용한 횟수는 각각 6,5,4 입니다. 그리고 이중 가장 작은 경우는 4입니다.이처럼 숫자 N과 number가 주어질 때, N과 사칙연산만 사용해서 표현 할 수 있는 방법 중 N 사용횟수의 최솟값을 return 하도록 solution 함수를 작성하세요.제한사항N은 1 이상 9 이하입니다.number는 1 이상 32,000 이하입니다.수식에는 괄호와 사칙연산만 가능하며 나누기 연산에서 나머지는 무시합니다.최솟값이 8보다 크면 -1을 return 합니다.입출력 예Nnumberreturn51242113입출력 예 설명예제 #..
썸네일 [백준] 15829번: Hashing 🔍문제문제 설명APC에 온 것을 환영한다. 만약 여러분이 학교에서 자료구조를 수강했다면 해시 함수에 대해 배웠을 것이다. 해시 함수란 임의의 길이의 입력을 받아서 고정된 길이의 출력을 내보내는 함수로 정의한다. 해시 함수는 무궁무진한 응용 분야를 갖는데, 대표적으로 자료의 저장과 탐색에 쓰인다.이 문제에서는 여러분이 앞으로 유용하게 쓸 수 있는 해시 함수를 하나 가르쳐주고자 한다. 먼저, 편의상 입력으로 들어오는 문자열에는 영문 소문자(a, b, ..., z)로만 구성되어있다고 가정하자. 영어에는 총 26개의 알파벳이 존재하므로 a에는 1, b에는 2, c에는 3, ..., z에는 26으로 고유한 번호를 부여할 수 있다. 결과적으로 우리는 하나의 문자열을 수열로 변환할 수 있다. 예를 들어서 문자열 "..
썸네일 [영진닷컴 X BDA SQLD 스터디] 2주차 2주차의 학습 목표는2과목 SQL 기본 및 활용 - SQL 기본 학습 (104p ~ 141p)이었습니다.  필수적으로 암기해야 할 부분은 아래 표로 정리해 두었고,명시적(Explicit) 형변환과 암시적(Implicit) 형변환 TO_NUMBER(문자열)문자열 → 숫자TO_CHAR(숫자 혹은 날짜, [FORMAT])숫자 혹은 날짜 → 지정된 FORMAT의 문자TO_DATE(문자열, FORMAT)문자열 → FORMAT의 날짜형내장형 함수(BUILT_IN Function)문자형 함수CONCAT, UPPER, LOWER, SUBSTR, LENGTH, TRIM,REPLACE, INSTR, LEFT, RIGHT, MID 등 숫자형 함수ROUND, ABS, POWER, CEIL, FLOOR, MOD, SIGN,SQ..
썸네일 [SQLD] 2파트 SQL 기본 및 활용 - SQL 기본 학습 본 포스팅은BDA 빅데이터분석학회 SQLD 스터디 학습내용입니다.  [2024 이기적 SQL 개발자 이론서+기출문제]서적과 강의를 바탕으로 서술한 내용임을 밝힙니다.  01. 관계형 데이터베이스 개요데이터베이스(DataBase, DB): 데이터를 일정한 형태로 저장해 놓은 것데이터베이스 관리시스템(DataBase Management System, DBMS): 기존 데이터베이스 기능에 추가로 데이터 손상을 방지 및 복구, 인증된 사용자만 접근 등 추가 기능을 지원하는 관리 시스템관계형 DBMS(Relational DBMS, RDBMS): 테이블로 데이터를 관리하고 테이블간 관계를 이용해 데이터를 정의하는 방식으로 대부분의 기업이 사용하며 지금도 공부하는 Oracle도 RDBMS 중 하나테이블(Table):..
썸네일 [영진닷컴 X BDA SQLD 스터디] 1주차 백엔드 개발을 배우다가도 데이터베이스 개념이 나오고전공 수업에서도 자꾸 데베, 데이터 개념이 나와서 도대체 데이터베이스는 어떤 것인지 의문이 들고,이걸 어떻게 다룰 수 있는지 배우고 싶었습니다.     어떻게 공부할까 고민하던 중, BDA 학회에서 진행하는 SQLD 자격증 스터디를 발견하여 참여하게 되었습니다.    선결제 후공부 공부법이라고,일단 자격증 시험을 접수하고 공부를 차차 해보기로 하였습니다. 학기 중에 자격증을 따는 선택이 저를 바쁜 길로 이끌 것 같긴 하지만,하고 싶은 게 너무 많은 그냥 해보기로 하였습니다✌️    매번 아이패드로 공부하다가오랜만에 책으로 공부하니까 너무 색다르고, 공부하는 맛이 쏠쏠했습니다. 스터디과제로 블로그에 학습 내용 정리하는 것이 있어서,책 1차 필기 → 블로그 ..
썸네일 [SQLD] 1파트 데이터 모델과 SQL 본 포스팅은BDA 빅데이터분석학회 SQLD 스터디 학습내용입니다.  [2024 이기적 SQL 개발자 이론서+기출문제]서적과 강의를 바탕으로 서술한 내용임을 밝힙니다.  01. 정규화: 데이터에 대한 중복을 제거하고 데이터가 관심자별로 처리되도록 엔터티를 쪼개 성능을 향상시키는 활동단, 정규화가 대체적으로 좋은 것이며, 경우에 따라서 반정규화(중폭 포함, 엔터티 합침)가 더 이득일 수도 있음→ 정규화시 입력/삭제/수정은 성능 향상↑, 조회는 성능 향상 혹은 저하될 수 있다.함수적 종속:어떤 기준 값(컬럼)에 의해 데이터가 종속되는 현상을 의미ex) 결정자(아이디) → 종속자(이름, 나이, 연봉, 부서ID, 부서명): 아이디가 나머지 모든 칼럼을 함수 종속한다.1. 1차 정규화: 엔터티에서 다중 속성이 있거..
썸네일 [SQLD] 1파트 데이터 모델링(Data Modeling) 본 포스팅은BDA 빅데이터분석학회 SQLD 스터디 학습내용입니다.  [2024 이기적 SQL 개발자 이론서+기출문제]서적과 강의를 바탕으로 서술한 내용임을 밝힙니다.  데이터베이스여러 사람들이 모여 통합으로 관리하는 기술여러 사람들이 함께 사용하고 공유 가능01. 데이터 모델링데이터 모델링: 현실 세계의 대상을 추상화, 단순화, 명확화하여 데이터베이스를 표현하는 것추상화: 현실 세계를 간략하게 표현단순화: 누구나 쉽게 이해할 수 있도록 표현명확화: 명확하게 의미가 해석되어야 하고 한 가지 의미를 가짐계획/분석시, 업무 분석 및 설계, 설명에 사용구축/운영시, 변경, 관리 목적으로 사용  ERD(Entitiy Relationship Diagram): 엔티티와 엔티티 간의 relationship(관계)를 발..
썸네일 [프로그래머스 - 완전 탐색] 소수 찾기 🔍문제문제 설명한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다.각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요.제한사항numbers는 길이 1 이상 7 이하인 문자열입니다.numbers는 0~9까지 숫자만으로 이루어져 있습니다."013"은 0, 1, 3 숫자가 적힌 종이 조각이 흩어져있다는 의미입니다.입출력 예nubmersreturn"17"3"011"2 입출력 예 설명예제 #1[1, 7]으로는 소수 [7, 17, 71]를 만들 수 있습니다.예제 #2[0, 1, 1]으로는 소수 [11, 101]를 만들 수 있습..
썸네일 [백준] 10162번: 전자레인지 🔍문제문제 설명3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 각각 5분, 1분, 10초이다.냉동음식마다 전자레인지로 요리해야할 시간 T가 초단위로 표시되어 있다. 우리는 A, B, C 3개의 버튼을 적절히 눌러서 그 시간의 합이 정확히 T초가 되도록 해야 한다. 단 버튼 A, B, C를 누른 횟수의 합은 항상 최소가 되어야 한다. 이것을 최소버튼 조작이라고 한다.만일 요리시간이 100초라고 하면(T=100) B를 1번, C는 4번 누르면 된다. 이와 다르게 C를 10번 눌러도 100초가 되지만 이 경우 10번은 최소 횟수가 아니기 때문이 답이 될 수 ..
썸네일 [프로그래머스 - 스택/큐] 다리를 지나는 트럭 🔍문제문제 설명트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 수 있으며, 다리는 weight 이하까지의 무게를 견딜 수 있습니다. 단, 다리에 완전히 오르지 않은 트럭의 무게는 무시합니다.예를 들어, 트럭 2대가 올라갈 수 있고 무게를 10kg까지 견디는 다리가 있습니다. 무게가 [7, 4, 5, 6]kg인 트럭이 순서대로 최단 시간 안에 다리를 건너려면 다음과 같이 건너야 합니다.경과 시간다리를 지난 트럭다리를 건너는 트럭대기 트럭0[][][7,4,5,6]1~2[][7][4,5,6]3[7][4][5,6]4[7][4,5][6]5[7,4][5][6]6..
썸네일 [프로그래머스 - 스택/큐] 올바른 괄호 🔍문제문제 설명괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어"()()" 또는 "(())()" 는 올바른 괄호입니다.")()(" 또는 "(()(" 는 올바르지 않은 괄호입니다.'(' 또는 ')' 로만 이루어진 문자열 s가 주어졌을 때, 문자열 s가 올바른 괄호이면 true를 return 하고, 올바르지 않은 괄호이면 false를 return 하는 solution 함수를 완성해 주세요.제한사항문자열 s의 길이 : 100,000 이하의 자연수문자열 s는 '(' 또는 ')' 로만 이루어져 있습니다입출력 예sanswer"()()"true"(())()"true")()("false"(()("false입출력 예 설명입출력 예 #1,2,3,4문..