20240930

·2024년 10월 1일

TIL

목록 보기
24/25

🖥️ 1.Today I Learned

-알고리즘,SQL 문제 풀기

https://school.programmers.co.kr/learn/courses/30/lessons/12977

def check(n):
    if n < 2:
        return False
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            return False
    return True

def solution(nums):
    cnt= 0  
    
    for i in range(len(nums)):
        for j in range(i + 1, len(nums)):
            for k in range(j + 1, len(nums)):
                total = nums[i] + nums[j] + nums[k]  
                if check(total):  
                    cnt+= 1 

    return cnt

=> itertools.combinations 사용하면 더 간결해짐
itertools.combinations(nums,3)
nums 배열에서 3개 고름

from itertools import combinations

def is_prime(n):
    if n < 2:
        return False
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            return False
    return True

def solution(nums):
    count = 0  # 소수의 경우의 수를 세기 위한 변수

    # 3개의 숫자를 조합하여 소수의 경우의 수 세기
    for comb in combinations(nums, 3):
        total = sum(comb)  # 조합의 합 계산
        if is_prime(total):  # 합이 소수인지 확인
            count += 1  # 소수일 경우 카운트 증가

    return count  # 소수의 경우의 수 반환

# 예시 사용
result = solution([1, 2, 3, 4, 5])
print(result)  # 결과 출력

https://school.programmers.co.kr/learn/courses/30/lessons/131536

SELECT USER_ID,PRODUCT_ID 
FROM ONLINE_SALE
GROUP BY USER_ID,PRODUCT_ID
HAVING COUNT(*)>1
ORDER BY USER_ID ASC ,PRODUCT_ID DESC;
profile
🍀🍀

0개의 댓글