728x90
반응형

전체 글 51

[MySQL] 대장균의 크기에 따라 분류하기 1

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/299307문제 요약주어진 문제는 대장균의 정보를 담고 있는 ECOLI_DATA 테이블에서 대장균의 크기(SIZE_OF_COLONY)에 따라 분류한 값을 출력하는 SQL 쿼리를 작성하는 것입니다. 크기는 3가지로 분류됩니다:100 이하: 'LOW'100 초과 1000 이하: 'MEDIUM'1000 초과: 'HIGH'최종적으로 ID와 크기 분류 결과를 출력하고, ID 기준으로 오름차순 정렬하는 것이 목표입니다.풀이 방법CASE 문 사용: 대장균의 크기(SIZE_OF_COLONY)를 기준으로 'LOW', 'MEDIUM', 'HIGH'로 분류해야 하므로 CASE 문을 사용하여 조건을 설정합니다.SI..

코딩테스트/SQL 2024.10.09

[MySQL] 부서별 평균 연봉 조회하기

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/284529문제 요약주어진 문제는 회사의 부서 정보와 사원 정보가 저장된 두 개의 테이블, HR_DEPARTMENT와 HR_EMPLOYEES 테이블을 이용하여 부서별 평균 연봉을 계산하는 SQL 쿼리를 작성하는 것입니다. 쿼리는 다음과 같은 결과를 반환해야 합니다:부서 ID영문 부서명부서별 평균 연봉 (소수점 첫째 자리에서 반올림하여 표시)결과는 평균 연봉을 기준으로 내림차순 정렬해야 합니다.풀이 방법테이블 결합: 부서 정보(HR_DEPARTMENT 테이블)와 사원 정보(HR_EMPLOYEES 테이블)를 부서 ID를 기준으로 JOIN합니다.평균 연봉 계산: AVG() 함수로 부서별 평균 연봉을..

코딩테스트/SQL 2024.10.09

[MySQL] 조건에 맞는 사용자 정보 조회하기

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/164670문제 요약 테이블 정보:USED_GOODS_BOARD: 중고 거래 게시판 정보를 담고 있으며, 게시글 ID, 작성자 ID, 제목, 내용, 가격, 작성일, 상태, 조회수 등으로 구성.USED_GOODS_USER: 중고 거래 게시판 사용자 정보를 담고 있으며, 사용자 ID, 닉네임, 시, 도로명 주소, 상세 주소, 전화번호 등으로 구성.목표:중고 거래 게시물을 3건 이상 등록한 사용자의 ID, 닉네임, 전체 주소(시, 도로명 주소, 상세 주소), 그리고 전화번호를 출력.전화번호는 xxx-xxxx-xxxx 형식으로 하이픈을 포함해 출력.결과는 사용자 ID 기준으로 내림차순으로 정렬.제약 ..

코딩테스트/SQL 2024.10.07

[백준] 1477 - 휴게소 세우기

문제 링크https://www.acmicpc.net/problem/1477문제 요약다솜이는 현재 N개의 휴게소를 가진 고속도로에서 M개의 새로운 휴게소를 더 세우려고 합니다. 목표는 휴게소가 없는 구간의 길이의 최댓값을 최소화하는 것입니다.휴게소는 고속도로의 시작과 끝에는 세울 수 없고, 기존 휴게소가 있는 곳에도 새로 세울 수 없습니다.휴게소는 정수 위치에만 세울 수 있습니다.N개의 기존 휴게소와 M개의 새로운 휴게소가 주어질 때, 휴게소가 없는 구간의 최댓값을 최소화했을 때의 값을 구하는 문제입니다.푼 방법 휴게소 간 구간 길이를 계산하고, 해당 구간에 새로운 휴게소를 배치합니다.이진 탐색을 통해 휴게소가 없는 구간의 최댓값을 최소화하는 값을 찾습니다. 정답 코드import sysn, m, l = m..

[백준] 17179 - 케이크 자르기

문제 링크https://www.acmicpc.net/problem/17179문제 요약롤 케이크의 길이와 자를 수 있는 위치가 주어집니다.각 자르는 횟수(Qi)에 대해, 케이크를 해당 횟수만큼 잘랐을 때 가장 작은 조각의 길이가 최대가 되도록 자르는 방법을 찾아야 합니다.각 자르는 횟수에 대해 가장 작은 조각의 길이의 최댓값을 구하는 것이 목표입니다.푼 방법 이분 탐색의 적용 범위 설정:가능한 답의 범위는 1부터 케이크 전체 길이(L)까지입니다. 즉, 가장 작은 조각의 길이의 최댓값을 찾는 것이므로 최소값은 1, 최댓값은 케이크의 전체 길이(L)로 설정합니다.이분 탐색 시작:중간값 X를 선택합니다. 이 X는 "가장 작은 조각의 길이의 후보"입니다.각 자르는 횟수(Qi)에 대해, 케이크를 X 이상의 길이를 ..

[MySQL] 즐겨찾기가 가장 많은 식당 정보 출력하기

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/131123문제 요약목표:REST_INFO 테이블에서 음식 종류(FOOD_TYPE)별로 즐겨찾기 수(FAVORITES)가 가장 많은 식당의 정보를 조회하는 SQL 쿼리를 작성하는 것.풀이 방법이 문제는 각 음식 종류별로 가장 인기가 많은(즐겨찾기 수가 많은) 식당을 조회하는 SQL 쿼리를 요구하며, 이를 서브쿼리와 group by 를 사용해서 음식 종류를 기준으로 내림차순으로 정렬해야 합니다.오답 코드SELECT FOOD_TYPE, REST_ID, REST_NAME, MAX(FAVORITES) AS FAVORITESFROM REST_INFOGROUP BY FOOD_TYPEORDER BY FOO..

코딩테스트/SQL 2024.10.06

[MySQL] 조건에 맞는 사용자와 총 거래금액 조회하기

문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/164668문제 요약두 개의 테이블인 USED_GOODS_BOARD와 USED_GOODS_USER를 사용하여 완료된 중고 거래의 총금액이 70만 원 이상인 사람의 회원 ID, 닉네임, 총거래금액을 조회하는 SQL 쿼리를 작성하는 것.세부 조건:USED_GOODS_BOARD 테이블에서 STATUS 컬럼이 '완료' 상태인 거래만 포함합니다.USED_GOODS_BOARD의 WRITER_ID는 USED_GOODS_USER의 USER_ID와 연결됩니다.결과는 총거래금액이 70만 원 이상인 사람만 조회합니다.결과는 총거래금액을 기준으로 오름차순으로 정렬해야 합니다.필요한 컬럼:회원 ID (USED_GOO..

코딩테스트/SQL 2024.10.06

[논문 리뷰] k²-Trees for Compact Web Graph Representation

저자Nieves R. Brisaboa, Susana Ladra (University of A Coruña, Spain)Gonzalo Navarro (University of Chile, Chile)초록기존에 사용하던 WWW 웹 구조의 시간적, 공간적 비효율성을 개선하기 위해, 웹 그래프를 표현하는 인접 행렬에서 넓고 빈 영역을 효율적으로 표현하여, 압축 트리 구조를 기반으로 웹 그래프 표현 방법을 제시함이 논문의 방법은 그래프의 관계를 비트로 표현 하고 유사한 비용의 정 방향 탐색과 역 방향 탐색 방법을 통해 빠른 탐색 시간을 가질 수 있음.WWW 웹 구조WWW 웹의 구조는 페이지 간의 하이퍼링크로 구성된 방향성 그래프로, 이 관계를 인접 행렬로 표현.인접 행렬 A의 요소 A(i,j)​는 i 페이지에서 ..

[백준] 20928 걷는 건 귀찮아

https://www.acmicpc.net/problem/20928 시행착오DP 문제로 풀어야 하나 생각 했는데, N*M 하면 2초는 그냥 넘을 것 같았다.이전에 최소 회의실 문제를 풀어본 적이 있는데, 그 문제랑 결이 비슷한 느낌리스트를 만들고, 리스트 자체를 수정하는 행위는 시간을 많이 잡아먹음. 인덱스로 접근해야 시간을 줄일 수 있음문제 풀이 아이디어갈 수 있는 최대한 멀리 이동현재 위치에서 도달할 수 있는 가장 먼 인력거 중 가장 멀리 이동할 수 있는 인력거로 이동위 이동을 m에 도달할 때 까지 반복손풀이더보기정답코드더보기import sysn, m = map(int, sys.stdin.readline().split())p = list(map(int, sys.stdin.readline().split..

[백준] 11509 - 풍선 맞추기

더보기 https://www.acmicpc.net/problem/11509  입력되는 정수 N이 1,000,000 이므로, O(N) 시간에 풀 수 있는 방법을 찾아야 함. { 파이썬은 1초에 2천만 정도의 instruction 처리 가능} 문제 풀이 아이디어높이에 따라 풍선 처리매 순간, 풍선을 터트릴 수 있는 높이의 화살이 있는지 확인있다면 해당 위치의 화살의 높이를 한 칸 낮춤없다면 화살을 해당 높이에 추가.손으로 한 풀이더보기정답 코드더보기import sysn = int(sys.stdin.readline().rstrip())ballons = list(map(int, sys.stdin.readline().split()))arrows = [0] * (1_000_000 + 1)for i in range(..

728x90
반응형