https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pl0Q6ANQDFAUq
풀이 및 해석(주석)
for tc in range(int(input())):
num = int(input())
a, b, c, d, e = 0, 0, 0, 0, 0
while num != 1: # 입력받은 숫자가 1이 된 경우 종료
if num % 11 == 0: # 11부터 차례대로 탐색하고 각 숫자 변수에 넣어주기
num = num//11
e += 1
elif num % 7 == 0:
num = num//7
d += 1
elif num % 5 == 0:
num = num//5
c += 1
elif num % 3 == 0:
num = num//3
b += 1
elif num % 2 == 0: # 마지막 이 과정에서 1이 될 것임
num = num//2
a += 1
print(f'#{tc+1}', a, b, c, d, e)
후기
그렇게 어렵지는 않은 문제였다. 코드의 해석은 주석에 달아놨다.
나는 코드를 짤 때 어쩌다보니 11부터 시작을 했는데, 2부터 시작하면 에러가 나는지 궁금하긴하다.
근데, 11부터 시작하는게 맞는것같다.
'SWEA' 카테고리의 다른 글
SWEA 1224 계산기3 후위표기법 (파이썬) (0) | 2022.08.23 |
---|---|
SWEA 1961 숫자 배열 회전 (파이썬) (0) | 2022.08.19 |
SWEA 4871 그래프 경로 DFS (파이썬) (0) | 2022.08.18 |
SWEA 4689 종이붙이기 (파이썬) (0) | 2022.08.18 |
SWEA 2005 파스칼의 삼각형 (파이썬) (0) | 2022.08.18 |