본문 바로가기

분류 전체보기62

(LEVEL 2)프로그래머스 - N개의 최소공배수(JAVA) 문제 입출력 예 풀이. 1. 유클리드 호제법을 이용하여 gcd함수 구현, lcm함수 구현 2. 0번째 값을 tmp에 저장후 크기만큼 돌며 lcm함수 실행 후 tmp에 해당 값 저장 >> 값 하나씩 비교하며 최대공약수, 최소공배수를 구해준다. class Solution { public int solution(int[] arr) { int tmp = arr[0]; for(int i=0;i 2023. 1. 2.
최대공약수(GCD) 와 최소공배수 (LCM) 최대공약수(GCD : Greatest Common Divisor) 최대공약수는 줄여서 GCD라 불림. 두 수 A,B의 최대공약수 G는 A,B의 공통된 약수 중에서 가장 큰 정수. (약수: N을 나눌수 있는 수) 최대공약수를 빠르게 구하는 방법 - 유클리드 호제법을 사용 GCD(a,b) = GCD(b,r) r이 0이면 그 때 b가 최대 공약수가 된다. ex) GCD(24,8) = GCD(16,8) = GCD(8,0) = 8 최대공약수 구현 재귀함수를 사용한 유클리드 호제법 int gcd(int a, int b){ if(b==0){ return a; } else{ reutnr gcd(b,a%b); } } 세 수의 최대공약수 GCD(a,b,c) = GCD(GCD(a,b),c) N개의 수 도 같은 방식으로 구할.. 2023. 1. 2.
[JAVA] -큐(Queue) 큐(Queue)란? 한쪽 끝에서 Data를 넣고 다른 한쪽에서 Data를 뺄 수 있는 구조이다. Stack과는 다르게 먼저 들어간 것이 먼저 나오는 FIFO(First In First Out) 이다. 큐(Queue)의 사용법 java.util.LinkedList, java.util.Queue import 하여 사용 Queue queue = new LinkedList() import java.util.LinkedList; //import import java.util.Queue; //import Queue queue = new LinkedList(); //String형 queue 선언, linkedlist 이용 큐(Queue)의 연산 offer(var), add(var) - 큐(Queue)에 var를 넣음.. 2022. 12. 30.
프로그래머스 - SQL [ 식품분류별 가장 비싼 식품의 정보 조회하기 Oracle ] 문제 풀이 SELECT CATEGORY,PRICE,PRODUCT_NAME FROM FOOD_PRODUCT where (CATEGORY,PRICE) IN (SELECT CATEGORY,MAX(PRICE) FROM FOOD_PRODUCT WHERE CATEGORY IN('과자','국','김치','식용유') GROUP BY CATEGORY) ORDER BY PRICE DESC >> 서브쿼리 사용하여 종류,최대값을 구해서 WHERE절에 이용 ※ GROUP BY 유의해서 풀기 2022. 12. 28.