728x90
데일리루틴 SQL
MySQL 성분으로 구분한 아이스크림 총 주문량 정답입니다.
SELECT I.INGREDIENT_TYPE, SUM(F.TOTAL_ORDER) FROM FIRST_HALF F
JOIN ICECREAM_INFO I ON I.FLAVOR = F.FLAVOR
GROUP BY I.INGREDIENT_TYPE
ORDER BY COUNT(F.TOTAL_ORDER)
- JOIN:
- FIRST_HALF 테이블의 FLAVOR 컬럼과 ICECREAM_INFO 테이블의 FLAVOR 컬럼을 조인합니다.
- GROUP BY:
- INGREDIENT_TYPE를 기준으로 그룹화하여 각 재료 유형별로 총 주문량을 집계합니다.
- ORDER BY:
- COUNT(F.TOTAL_ORDER)에 따라 정렬합니다.
데일리루틴 알고리즘
java 최대공약수와 최소공배수 정답입니다.
class Solution {
public int[] solution(int n, int m) {
int[] answer = {0, n*m};
int max = Math.max(n, m);
int min = Math.min(n, m);
//최대공약수
for (int i = 1; i <= max; i++) {
if (max % i == 0 && min % i== 0)
answer[0] = i;
}
//최소공배수
for (int i = 1; i <= max; i++) {
for (int j = 1; j <= min; j++) {
if (min * i == max * j) {
if (answer[1] > min * i) {
answer[1] = min * i;
}
}
}
}
return answer;
}
}
다른 방법을 몰라서 초보자답게 for와 if문 만으로 해결했습니다.
class Solution {
public int[] solution(int n, int m) {
int[] answer = new int[2];
// 최대공약수(GCD) 계산 (유클리드 호제법)
int gcd = getGCD(n, m);
answer[0] = gcd;
// 최소공배수(LCM) 계산
answer[1] = n * m / gcd;
return answer;
}
// 유클리드 호제법으로 GCD 계산
private int getGCD(int a, int b) {
while (b != 0) {
int temp = a % b;
a = b;
b = temp;
}
return a;
}
}
chatGPT에게 더 나은 해결방법을 물어보았습니다. private을 써서 남들이 가져가서 사용할 수 없게 하고, 수학도 잘하는군요..
728x90
반응형
LIST
'Sparta > 데일리루틴' 카테고리의 다른 글
TIL(Today I Learned)_데일리루틴_24.11.16.Sat (0) | 2024.11.16 |
---|---|
TIL(Today I Learned)_데일리루틴_24.11.15.Fri (0) | 2024.11.15 |
TIL(Today I Learned)_데일리루틴_24.11.13.Wed (0) | 2024.11.13 |
TIL(Today I Learned)_데일리루틴_24.11.12.Tue (0) | 2024.11.12 |
TIL(Today I Learned)_데일리루틴_24.11.11.mon (0) | 2024.11.11 |