[24] 부트캠프 TIL - 본캠프 7일차

2024. 9. 3. 09:53부트캠프 TIL

728x90

1. 프로그래머스 이용한 sql과 알고리즘 문제 해결

1-1)  sql 문제 : null 처리하기

ㄴ 문제 : 동물 정보 테이블에서 생물 종, 이름, 성별 및 중성화 여부를 아이디순으로 조회해주세요. (이름이 없는 동물의 이름은 'No name'으로 표기해주세요)

ㄴ 설명_1 : 어떤정보를 가져오는지 체크 (조회할 컬럼체크) (생물종, 이름, 성별 및 중성화 여부 : 3개)

ㄴ 설명_2 : 아이디 순으로 조회 (ORDER BY 사용)

ㄴ 설명_3 : 이름이 없는 동물은 'No name'으로 표기 (if문 사용)

ㄴ ※ 최종적으로 문제를 한번 더 확인 (특정 조건을 놓친게 없는지 확인)

ㄴ 예시 : SELECT 생물종, IF(이름 IS NULL,"No name",이름) AS NAME, 중성화여부 FROM 테이블명 ORDER BY 동물아이디;

ㄴ 실제 쿼리 : SELECT ANIMAL_TYPE, IF(NAME IS NULL,"No name",name) AS NAME, SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID;

 

1-2) 알고리즘 문제 : 약수의 합 구하기

ㄴ 정수 n을 x로 나눠서 나머지가 1이되도록 하는 가장 작은 자연수 x를 return하는 함수를 완성해주세요. 

ㄴ n을 기준으로 반복문을 먼저 실행한다.
ㄴ if문으로 n % i == 1이라는 조건을 만든다.

ㄴ 해당 조건에 해당되는 i를 return한다. 

ㄴ 해당되는 수는 n이 10일땐 3,9가 return되고, n이 12일땐 11이 return된다.

ㄴ 조건은 가장 작은 자연수 1개만 return이기 때문에 break를 찍어서 각각 3, 11만 return 되도록 해준다.

ㄴ ※ 뭔가 더 깔끔한 방법이 있을거 같아서 나중에 찾아보고 필요한 부분은 수정하도록 하겠다.

728x90