마키 리뷰 & 코테

회고

마키 코테 리뷰

처음에 봤을 때, 많이 어렵게 생각했던 것 같다.
문제는 구현(?), 최단거리, 반복 문자열(ababab, abcabcabd) 문제였었다.

처음 문제는 구현, 그냥 최단거리 이용해서 최소 시간을 구하는 문제였다. 단지 원형으로 되어있는 거리였다.
처음엔 dfs/bfs와 같은 탐색이었는 줄 알았는데 그게 아니었다. 최소 거리를 이용한 문제였다.
코테 이후에 풀어버렸다.

두번째 문제는 최단거리.. 그냥 조합 이용해서 구하면 되는 문제였다.
이건 빠르게 풀었다.

세번째 문제는 반복문자열 중에 최소 문자열을 찾는 문제이다.
고민을 하다가 결국 못풀었고 해설을 통해 겨우 알았다.
효율성은 반씩 또는 메모리를 따로 구현하는 방법도 한번 생각해야할 것 같다.

팩토리얼 꼬리

이제야 리뷰를 한다.
팩토리얼 꼬리는 5의 개수를 중심으로 생긴다.
따라서 5의 배수, 25의 배수, 125의 배수 값을 주의해서 개수를 찾으면 되는 것 같다.
이렇게 몫마다 가져가고 다음 몫마다 가져가면서 주어진 수 이전에 5의 배수를 찾으면 될 것 같다.


def solution(n):
    ans = 0

    while n >= 5:
        ans += n // 5
        n = n // 5

    return ans

print(solution(2100000000))