반응형
[ Contents ]
1. 문제 (링크 참조)
1769번: 3의 배수
문제가 잘 풀리지 않을 때, 문제를 바라보는 시각을 조금만 다르게 가지면 문제가 쉽게 풀리는 경험을 종종 해 보았을 것이다. 여러 가지 방법이 있지만 그 중 하나로 우리가 풀고 싶은 문제를
www.acmicpc.net
2. 문제 풀이
자연수 n이 주어집니다. n이 1의 자리가 될 때까지 각 자릿수를 더해 변환합니다.
각 자릿수를 더한 합이 3의 배수이면 더하기 전의 수도 3의 배수입니다. 1의 자리가 3의 배수(3, 6, 9) 일 경우, n은 3의 배수입니다.
2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학
[Algorithm] 단골 1번 문제, 구현 / 수학
[ Contents ] 1. 구현 단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하
star7sss.tistory.com
단순히 1의 자리가 될 때까지, 각 자릿수의 합을 구하면 됩니다.
3. 코드
n = input()
cnt = 0 #횟수
# 1의 자리가 될 때까지 반복
while len(n) > 1:
cnt += 1
# 각 자릿수의 합
sum = 0
for i in n:
sum += int(i)
n = str(sum)
print(cnt)
if int(n) % 3 == 0:
print("YES")
else:
print("NO")
중간에 각 자릿수의 합이 3의 배수가 안되더라도 멈추면 안됩니다. 1의 자리가 될 때까지 연산한 후에, 3의 배수인지 판정합니다.
반응형
'Algorithm' 카테고리의 다른 글
[정렬/탐색] 백준 1920 수 찾기 - Python (0) | 2022.02.10 |
---|---|
[Algorithm] 이진탐색(Binary Search), 반반 나누어서 찾자 (0) | 2022.02.09 |
[수학/소수] 백준 4948 베르트랑 공준 - Python (1) | 2022.02.09 |
[수학/소수] 백준 11653 소인수분해 - Python (0) | 2022.02.09 |
[수학/소수] 백준 2581 소수 - Python (0) | 2022.02.09 |
댓글