jae_coding

(백준 알고리즘 문제풀이) 1676번 팩토리얼 0의 개수 본문

알고리즘 문제/백준

(백준 알고리즘 문제풀이) 1676번 팩토리얼 0의 개수

재코딩 2022. 7. 7. 02:10
반응형

문제

문제 링크

 

문제 접근

  • case1: N이 0 또는 1인경우는 0! 또는 1!이므로 1을 출력한다.
  • case2: N 팩토리얼의 수를 구한 후 string타입으로 변경 후 마지막 문자부터 첫번째 문자 순서대로 "0" 인경우 count를 올려준다. 만약 "0"이 아니라면 for문을 빠져나온다. 출력은 count를 하면된다.

코드

import sys

N = int(sys.stdin.readline())

num = 1
if N == 0 or N == 1:
    print(0)
else:
    for i in range(1, N+1):
        num *= i

    st = str(num)

    count = 0
    for i in range(len(st)):
        if st[len(st)-i-1] == "0":
            count += 1
        else:
            break
    print(count)

느낀점

잘못 제출하면 생기는 일

문제는 쉬웠지만 이것때문에 문제를 계속 고민해본... ㅠ 알고리즘은 완벽하게 구현했지만 언어를 잘못 선택해서 제출하는바람에 시간이 좀 걸렸다는.. 다음부터는 이런 실수 안해야겠다.

 

반응형
Comments