牛客周赛 Round 98 F

#include "bits/stdc++.h"

using namespace std;
using i64 = int64_t;

constexpr int P = 998244353;
i64 power(i64 a, i64 b, int p = P) {
    i64 r = 1;
    for (; b > 0; b >>= 1, a = a * a % p) {
        if (b & 1) {
            r = r * a % p;
        }
    }
    return r;
}
i64 inv(i64 a) {
    return power(a, P - 2);
}

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    
    i64 n;
    cin >> n;

    i64 ans = n % P * 49 % P;
    ans = (ans + (power(10, n) - 1 + P) % P * 40 % P) % P;
    ans = (ans + (power(100, n) - 1 + P) % P * inv(99) % P * 400 % P) % P;
    ans = (ans + (P - (power(10, n) - 1 + P) % P * inv(9) % P * 80 % P)) % P;
    ans = ans * inv(81) % P;
    cout << ans << '\n';
    
    return 0;
}

#牛客创作赏金赛#
全部评论

相关推荐

菜鸟在线求一份off...:大部分实习都可以随时跑路的,有时候实习协议书上就算写了违约金也是没用的。
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务