25.05.19 코딩 공부 시작

코딩 척척석박사 분들 피드백 환영합니다.

공대생이 코딩에서 살아남기

코드카타(알고리즘+SQL)

06.03 코드카타 (15)나머지가 1이 되는 수 찾기

코딩 아가 2025. 6. 3. 16:54

Python3

Q

자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다. (3 ≤ n ≤ 1,000,000)

A

def solution(n):
    for x in range(2,n):
        if n%x==1:
            return x

처음 A

def solution(n):
    for x in range(2,n):
        if n%x==1:
            return min(x)

틀린이유

min(x): 리스트/튜플/여러 값 중에서 최소값을 고를 때 쓰는 함수

>> 여기서는 x가 그냥 단일 숫자이므로 의미X

My SQL

Q

ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다.

마지막 줄의 개는 이름이 없기 때문에, 이 개의 이름은 "No name"으로 표시합니다. 따라서 SQL문을 실행하면 다음과 같이 나와야 합니다.

A(if: 간단한 조건에 적합, MySQL에서만 사용)

SELECT ANIMAL_TYPE, 
    if (NAME is null, 'No name', NAME) as NAME,
    SEX_UPON_INTAKE
from ANIMAL_INS
order by ANIMAL_ID

#if(조건,참일 때,거짓일 때)

#as NAME: 필수X, but 가독성위해 쓰기

#order by 맨 뒤에 ';'은 필수X, but SQL 문장 전체가 끝낫다는걸 명시

another A(CASE: 표준 SQL 구문, 다양한 DB에서 호환 가능)

SELECT 
    ANIMAL_TYPE, 
    CASE  
        when NAME is null then 'No name'
        else NAME
    END as NAME,
    SEX_UPON_INTAKE
from ANIMAL_INS
order by ANIMAL_ID;

'코드카타(알고리즘+SQL)' 카테고리의 다른 글

06.05 코드카타 <찾고싶은문자>  (0) 2025.06.05
06.04 코드카타  (7) 2025.06.04
06.02 코드카타 (14)약수의 합  (0) 2025.06.02
06.01 코드카타  (0) 2025.06.01
05.31 코드카타  (0) 2025.05.31