반응형

전체 글 366

[백준 알고리즘] 2108번: 통계학 (Python)

https://www.acmicpc.net/problem/2108 2108번: 통계학 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. www.acmicpc.net 문제 수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자. 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최댓값과 최솟값의 차이 N개의 수가 주어졌을 때..

Algorithm/백준 2023.04.26

[프로그래머스] 즐겨찾기가 가장 많은 식당 정보 출력하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/131123 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ WHERE 절 안에서 IN()을 통해 음식 종류별로 즐겨찾기가 가장 많은 가게를 찾아주고, 그 데이터와 일치하는 가게만 추출해주는 작업을 거칩니다 ★ 그 이후에 음식 종류를 기준으로 내림차순 출력을 해주시면 됩니다 ★ WHERE절 IN 사용법 https://ojava.tistory.com/12 WHERE 절의 IN 사용법! WHERE 절은 아주 유용한 절입니다. 그만큼 알아둘 ..

[프로그래머스] 가격대 별 상품 개수 구하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/131530 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ TRUNCATE 함수는 수의 원하는 자릿수까지 '버림'을 가능하게 하는 함수입니다. 저희는 문제에서 만의 자리 값대로 구간을 구분해줘야 하기 때문에 뒤에서 4번째까지 (-4)의 수를 제거해줌으로써 만의 자리를 구분 가능 하게 합니다 ! EX) TRUNCATE(30000,-4) => 3. TRUNCATE(25000, -4) => 2. TRUNCATE(9000, -4) => 0 ★..

[프로그래머스] 상품 별 오프라인 매출 구하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/131533 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 상품 별 금액과 상품 별 판매량의 합을 SALES라는 컬럼명으로 출력 ★ 문제를 살펴보면 상품코드 별 매출액을 구하는 문제이기 때문에 GROUP_BY절에 PRODUCT_CODE로 그룹핑 ★ 매출액을 기준으로 내림차순, 상품 코드를 기준으로 오름차순 정렬

[프로그래머스] 재구매가 일어난 상품과 회원 리스트 구하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/131536 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 동일한 회원이 동일한 상품을 구매했는지 알아보기 위해 USER_ID와 PRODUCT_ID를 GROUP BY로 묶습니다. ★GROUP BY에 HAVING으로 조건절을 주는데 PRODUCT_ID가 등장한 횟수가 1보다 크면, 즉 2이상인 것들만 출력해줍니다. ★ USER_ID로 오름차순, PRODUCT_ID로 내림차순 정렬 ★ GROUP BY, HAVING 참고자료 https://..

[백준 알고리즘] 15596번: 정수 N개의 합 (Python)

https://www.acmicpc.net/problem/15596 15596번: 정수 N개의 합 C++17, Java 8, Python 3, C11, PyPy3, C99, C++98, C++11, C++14, Go, C99 (Clang), C++98 (Clang), C++11 (Clang), C++14 (Clang), C11 (Clang), C++17 (Clang) www.acmicpc.net 문제 정수 n개가 주어졌을 때, n개의 합을 구하는 함수를 작성하시오. 작성해야 하는 함수는 다음과 같다. C, C11, C (Clang), C11 (Clang): long long sum(int *a, int n); a: 합을 구해야 하는 정수 n개가 저장되어 있는 배열 (0 ≤ a[i] ≤ 1,000,000,..

Algorithm/백준 2023.04.22

[백준 알고리즘] 11723번: 집합 (Python)

https://www.acmicpc.net/problem/11723 11723번: 집합 첫째 줄에 수행해야 하는 연산의 수 M (1 ≤ M ≤ 3,000,000)이 주어진다. 둘째 줄부터 M개의 줄에 수행해야 하는 연산이 한 줄에 하나씩 주어진다. www.acmicpc.net 문제 비어있는 공집합 S가 주어졌을 때, 아래 연산을 수행하는 프로그램을 작성하시오. add x: S에 x를 추가한다. (1 ≤ x ≤ 20) S에 x가 이미 있는 경우에는 연산을 무시한다. remove x: S에서 x를 제거한다. (1 ≤ x ≤ 20) S에 x가 없는 경우에는 연산을 무시한다. check x: S에 x가 있으면 1을, 없으면 0을 출력한다. (1 ≤ x ≤ 20) toggle x: S에 x가 있으면 x를 제거하고..

Algorithm/백준 2023.04.22

[프로그래머스] 12세 이하인 여자 환자 목록 출력하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/132201 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ IFNULL 함수를 활용하여, TLNO의 값이 NULL일 경우에 'NONE'을 출력하도록 해줍니다. EX) IFNULL('해당 칼럼명', '칼럼 값이 NULL일 경우 대체 값') ★ WHERE 절에서 AGE가 12이하이면서 성별이 'W'인 값들만 추출 ★ 나이를 기준으로 내림차순. 같을 시, 이름을 기준으로 오름차순 정렬 ★ IFNULL 참고자료 https://velog.io/..

[프로그래머스] 진료과별 총 예약 횟수 출력하기 (Mysql)

https://school.programmers.co.kr/learn/courses/30/lessons/132202 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 소스코드 풀이 ★ 진료예약일시를 2022-05월에 한 사람의 수를 5월예약건수라는 컬럼명으로 출력 ★ 진료과코드 별로 조회해야 하기 때문에 MCDP_CD로 그룹핑 ★ SELECT문에서 우리가 받을 칼럼명을 설정했는데, 이 칼럼명을 GROUP BY나 ORDER BY절에 그대로 쓰면 안됩니다 EX) GROUP BY '진료과코드' ORDER BY '5월예약건수', '진료과코드' => X

[백준 알고리즘] 2738번: 행렬 덧셈 (Python)

https://www.acmicpc.net/problem/2738 2738번: 행렬 덧셈 첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같 www.acmicpc.net 문제 N*M크기의 두 행렬 A와 B가 주어졌을 때, 두 행렬을 더하는 프로그램을 작성하시오. 입력 첫째 줄에 행렬의 크기 N 과 M이 주어진다. 둘째 줄부터 N개의 줄에 행렬 A의 원소 M개가 차례대로 주어진다. 이어서 N개의 줄에 행렬 B의 원소 M개가 차례대로 주어진다. N과 M은 100보다 작거나 같고, 행렬의 원소는 절댓값이 100보다 작거나 같은 정수이다. 출력 첫째 줄부터..

Algorithm/백준 2023.04.21
반응형