본문 바로가기

Algorithm

(C++) - 백준(BOJ) 2553번 : 마지막 팩토리얼 수 답

반응형

19996~19999까지 곱하게 된다면 5자리수 * 5자리수 * 5자리수 * 5자리수 이므로 숫자가 조단위가 됩니다. 이 점에 유의하셔야 시간초과를 피할 수 있습니다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
#define ll long long
using namespace std;
 
int main() {
    ll n,ans;
    cin >> n;
    ans = 1;
    for (int i = 1; i <= n; i++)
    {
        ans *= i;
        ans %= 1000000000000;
        while (ans % 10 == 0)
            ans /= 10;
    }
    cout << ans%10 << '\n';
}
cs