오블완 21

[프로그래머스 Lv2] 전력망을 둘로 나누기

문제 설명n개의 송전탑이 전선을 통해 하나의 트리 형태로 연결되어 있습니다. 당신은 이 전선들 중 하나를 끊어서 현재의 전력망 네트워크를 2개로 분할하려고 합니다. 이때, 두 전력망이 갖게 되는 송전탑의 개수를 최대한 비슷하게 맞추고자 합니다.송전탑의 개수 n, 그리고 전선 정보 wires가 매개변수로 주어집니다. 전선들 중 하나를 끊어서 송전탑 개수가 가능한 비슷하도록 두 전력망으로 나누었을 때, 두 전력망이 가지고 있는 송전탑 개수의 차이(절대값)를 return 하도록 solution 함수를 완성해주세요.제한 사항n은 2 이상 100 이하인 자연수입니다.wires는 길이가 n-1인 정수형 2차원 배열입니다.wires의 각 원소는 [v1, v2] 2개의 자연수로 이루어져 있으며, 이는 전력망의 v1번 ..

11/25 오답노트

공원 산책class Solution { public int[] solution(String[] park, String[] routes) { int x = 0; int y = 0; // 시작 위치 'S' 찾기 for(int i=0; i= 0 && ny >= 0 && nx   시작 위치 찾기: park 배열을 탐색해서 'S'의 위치를 찾아 x와 y의 초기값으로 설정함 명령어 처리 ex. "E 2": direction과 step을 분리해 이동 방향과 거리 설정함 이동 로직: 각 방향(E, W, S, N)에 따라 좌표(nx, ny)를 업데이트함 경계 및 장애물 검사: 이동 도중 경계 밖으로 나가거나 장애물('X')을 만나면 이동을 중단함 최종..

11/24 오답노트

추억 점수 HashMap에서 키를 가져오고 비교하기containsKey() 또는 get()ex.map.containsKey(person)map.getOrDefault(person, 0)카드 뭉치ArrayIndexOutOfBoundsException 오류cards1과 cards2의 인덱스를 따로 관리한다. int idx1 = 0; int idx2 = 0; for(int i=0; i크기가 작은 부분 문자열 런타임 에러가 발생하는 주요 원인Integer.parseInt 사용 문자열이 32비트 정수의 범위를 초과하면 변환 중 NumberFormatException이 발생함 푸드 파이트 대회 대칭 구조를 생성해야 하는 데 실패함StringBuilder를 사용해서..

자료구조

선형 자료구조선형 자료구조(linear data structure)는 연속적으로 데이터가 나열되는 자료구조를 나타낸다.대표적인 선형 자료구조로는 배열, 리스트, 스택, 큐 등이 있다. 배열배열(array)은 정해진 크기만큼 데이터가 일렬로 저장되는 정적 자료구조다.각 데이터를 배열의 요소(element)라고 하며 데이터를 가리키는 번호를 인덱스(index)라고 한다.  접근   시간복잡도 : O(1)  검색   시간복잡도 : O(n)  삽입   시간복잡도 : O(n)  삭제   시간복잡도 : O(n)연결 리스트연결 리스트(linked list)는 배열과 달리 크기가 정해져 있지 않은 동적(dynamic) 자료구조다.여러 개의 노드로 구성되어 있고, 노드는 데이터와 다음 노드가 저장된 주소 값을 가지고 있..

공부/CS 전공 2024.11.23

[프로그래머스 Lv2] GROUP BY(SQL)

🚨🔍Lv2. 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기CAR_RENTAL_COMPANY_CAR 테이블에서 '통풍시트', '열선시트', '가죽시트' 중 하나 이상의 옵션이 포함된 자동차가 자동차 종류 별로 몇 대인지 출력하는 SQL문을 작성해주세요. 이때 자동차 수에 대한 컬럼명은 CARS로 지정하고, 결과는 자동차 종류를 기준으로 오름차순 정렬해주세요. [ 틀린 코드 ]SELECT CAR_TYPE, COUNT(*) AS CARSFROM CAR_RENTAL_COMPANY_CARGROUP BY CAR_TYPEHAVING OPTIONS IN ('통풍시트', '열선시트', '가죽시트')ORDER BY CAR_TYPE ASC; SQL 실행 중 오류가 발생하였습니다.Unknown column 'OPT..

[프로그래머스 Lv 1, Lv2] SUM, MAX, MIN(SQL)

Lv1. 가장 비싼 상품 구하기PRODUCT 테이블에서 판매 중인 상품 중 가장 높은 판매가를 출력하는 SQL문을 작성해주세요. 이때 컬럼명은 MAX_PRICE로 지정해주세요.SELECT MAX(PRICE) AS MAX_PRICEFROM PRODUCT;Lv1. 최댓값 구하기가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요.SELECT MAX(DATETIME) AS 시간FROM ANIMAL_INS;🚨🔍Lv1. 잡은 물고기 중 가장 큰 물고기의 길이 구하기FISH_INFO 테이블에서 잡은 물고기 중 가장 큰 물고기의 길이를 'cm' 를 붙여 출력하는 SQL 문을 작성해주세요. 이 때 컬럼명은 'MAX_LENGTH' 로 지정해주세요.[ 틀린 코드 ]SELECT MAX(LENGTH..

[프로그래머스 Lv2] SELECT(SQL)

🔍Lv2. 3월에 태어난 여성 회원 목록 출력하기MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. 이때 전화번호가 NULL인 경우는 출력대상에서 제외시켜 주시고, 결과는 회원ID를 기준으로 오름차순 정렬해주세요.SELECT MEMBER_ID, MEMBER_NAME, GENDER, TO_CHAR(DATE_OF_BIRTH, 'YYYY-MM-DD') AS DATE_OF_BIRTHFROM MEMBER_PROFILEWHERE TO_CHAR(DATE_OF_BIRTH, 'YYYY-MM-DD') LIKE '%03%'AND GENDER = 'W' AND TLNO IS NOT NULLORDER BY MEMBER_ID;🔍Lv2. 재구매가 일..

[프로그래머스 Lv1] SELECT(SQL)

Lv1. 평균 일일 대여 요금 구하기CAR_RENTAL_COMPANY_CAR 테이블에서 자동차 종류가 'SUV'인 자동차들의 평균 일일 대여 요금을 출력하는 SQL문을 작성해주세요. 이때 평균 일일 대여 요금은 소수 첫 번째 자리에서 반올림하고, 컬럼명은 AVERAGE_FEE로 지정해주세요.SELECT ROUND(AVG(DAILY_FEE)) AS AVERAGE_FEEFROM CAR_RENTAL_COMPANY_CARWHERE CAR_TYPE = 'SUV';Lv1. 과일로 만든 아이스크림 구하기상반기 아이스크림 총주문량이 3,000보다 높으면서 아이스크림의 주 성분이 과일인 아이스크림의 맛을 총주문량이 큰 순서대로 조회하는 SQL 문을 작성해주세요.SELECT f.FLAVORFROM FIRST_HALF f ..

데이터베이스 (🙋🏻‍♀️ Q&A)

데이터베이스🙋🏻‍♀️ NoSQL이 무엇인지 관계형 데이터베이스와 비교해 설명해 보세요.NoSQL은 비관계형 데이터베이스로, 2차원 형태의 관계형 데이터베이스보다 유연한 데이터 구조를 가질 수 있습니다. 그래서 도큐먼트, 키-값, 그래프 등 다양한 형태로 데이터를 저장할 수 있습니다. 또한 서버 증설을 통한 데이터베이스 확장이 가능해서 방대한 양의 데이터를 저장하는 데 유리합니다. 하지만 중복 데이터를 허용하므로 데이터를 갱신하는 경우 관계형 데이터베이스보다 처리 비용이 많이 든다는 단점이 있습니다.🙋🏻‍♀️ 데이터베이스에서 슈퍼 키와 후보 키의 차이점을 설명해 보세요.슈퍼 키와 후보 키 모두 튜플을 식별할 수 있는, 유일성을 만족하는 키입니다. 하지만 슈퍼 키는 최소성을 만족하지 않아도 됩니다. ..

공부/CS 전공 2024.11.18