-
1769. [Python]3의 배수Python_알고리즘/Silver V 2023. 4. 26. 02:43
1. 문제
https://www.acmicpc.net/problem/1769
1769번: 3의 배수
문제가 잘 풀리지 않을 때, 문제를 바라보는 시각을 조금만 다르게 가지면 문제가 쉽게 풀리는 경험을 종종 해 보았을 것이다. 여러 가지 방법이 있지만 그 중 하나로 우리가 풀고 싶은 문제를
www.acmicpc.net
2. 접근 방법
- 시간 제한: 2초
- 메모리 제한: 128MB
- 구현
3. 파이썬 코드
N = input() # 각 자리수의 합을 구해야 하기때문에 초기값이 10보다 큰지 작은지 판단 if int(N) >= 10: cnt = 0 # 무한루프를 통해서 각 자리 수의 합을 N 으로 갱신 while True: # 변수 선언 total = 0 # 각 자리수를 정수형으로 변화하며 total 에 값을 더해 나감 for i in N: total += int(i) # 총합을 문자로 변형하여 N에 대입 N = str(total) cnt += 1 # N의 길이가 1이면 종료 if len(N) == 1: break # 반복문이 끝나면 횟수를 출력 print(cnt) # 3으로 나눠지면 YES 안나눠지면 NO if int(N) % 3 == 0: print("YES") else: print("NO") else: if int(N) % 3 == 0: print(0) print("YES") else: print(0) print("NO")
4. 문제를 풀고난 후 생각
- 문제에 있는 내용을 그대로 구현하는 문제여서 딱히 어려운 점은 없다.
- 문자의 길이가 1인 경우 3,6,9 인지만 확인해주면 해결 가능하다.
5. 문제를 푸는데 도움이 되는 지식
- 빙고의 조건 어떻게 구현할지
'Python_알고리즘 > Silver V' 카테고리의 다른 글
10826. [Python]피보나치 수 4 (0) 2023.05.17 4096. [Python]팰린드로미터 (0) 2023.04.26 2822. [Python]점수 계산 (0) 2023.04.08 9625. [Python]BABBA (0) 2023.04.05 8979. [Python]올림픽 (0) 2023.04.04