PYTHON
1937년 Collatz란 사람에 의해 제기된 이 추측은, 주어진 수가 1이 될 때까지 다음 작업을 반복하면, 모든 수를 1로 만들 수 있다는 추측입니다. 작업은 다음과 같습니다.
1-1. 입력된 수가 짝수라면 2로 나눕니다.
1-2. 입력된 수가 홀수라면 3을 곱하고 1을 더합니다.
2. 결과로 나온 수에 같은 작업을 1이 될 때까지 반복합니다.
예를 들어, 주어진 수가 6이라면 6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1 이 되어 총 8번 만에 1이 됩니다. 위 작업을 몇 번이나 반복해야 하는지 반환하는 함수, solution을 완성해 주세요. 단, 주어진 수가 1인 경우에는 0을, 작업을 500번 반복할 때까지 1이 되지 않는다면 –1을 반환해 주세요.
def solution(num):
if num == 1 :
answer = 0
else :
i = 0
while (num != 1) and (i < 500) :
if num % 2 == 0 :
num = num / 2
else :
num = num * 3 + 1
i += 1
if i == 500 :
answer = -1
else :
answer = i
return answer
SQL
보호소의 동물이 중성화되었는지 아닌지 파악하려 합니다. 중성화된 동물은 SEX_UPON_INTAKE 컬럼에 'Neutered' 또는 'Spayed'라는 단어가 들어있습니다. 동물의 아이디와 이름, 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성해주세요. 이때 중성화가 되어있다면 'O', 아니라면 'X'라고 표시해주세요.
SELECT ANIMAL_ID,
NAME,
IF ((SEX_UPON_INTAKE LIKE '%Neutered%') or
(SEX_UPON_INTAKE LIKE '%Spayed%'),
'O', 'X') '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID
'코드카타' 카테고리의 다른 글
[2025/01/24]알고리즘 코드카타 17회차 (0) | 2025.01.24 |
---|---|
[2025/01/23]알고리즘 코드카타 16회차 (0) | 2025.01.23 |
[2025/01/21]알고리즘 코드카타 14회차 (0) | 2025.01.21 |
[2025/01/20]알고리즘 코드카타 13회차 (0) | 2025.01.20 |
[2025/01/17]알고리즘 코드카타 12회차 (0) | 2025.01.17 |