Submission #65074728


Source Code Expand

#include <bits/stdc++.h>
#include <atcoder/modint>
using namespace std;
using namespace atcoder;

using ll = long long;
using mint = modint1000000007;

int main(){
    int K; cin >> K;
    string S; cin >> S;

    int mod = 1000000007;
    int N = S.size(), M = N + K + 10;
    vector<mint> fact(M), inv(M), rfact(M);
    inv[0] = inv[1] = 1;
    for(int i = 2; i < M; ++i){
        inv[i] = -inv[mod % i] * (mod / i);
    }
    fact[0] = rfact[0] = fact[1] = rfact[1] = 1;
    for(int i = 2; i < M; ++i){
        fact[i] = fact[i - 1] * i;
        rfact[i] = rfact[i - 1] * inv[i];
    }
    auto Combination = [&](int n, int r) -> mint {
        if(r < 0 or r > n) return 0;
        return fact[n] * rfact[r] * rfact[n - r];
    };
    auto Homogeneous = [&](int n, int r) -> mint {
        if(n < 0 or r < 0) return 0;
        return r == 0 ? 1 : Combination(n + r - 1, r);
    };

    mint ans = 0, x = mint(25).pow(K), y = 1;
    for(int i = 0; i <= K; ++i, x /= 25, y *= 26){
        ans += Homogeneous(N, K - i) * x * y;
    }
    cout << ans.val() << endl;
}

Submission Info

Submission Time
Task F - Strivore
User lX57
Language C++ 20 (gcc 12.2)
Score 600
Code Size 1104 Byte
Status AC
Exec Time 143 ms
Memory 27676 KiB

Judge Result

Set Name Sample Subtask1
Score / Max Score 0 / 0 600 / 600
Status
AC × 2
AC × 30
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
Subtask1 sample_01.txt, sample_02.txt, sub1_01.txt, sub1_02.txt, sub1_03.txt, sub1_04.txt, sub1_05.txt, sub1_06.txt, sub1_07.txt, sub1_08.txt, sub1_09.txt, sub1_10.txt, sub1_11.txt, sub1_12.txt, sub1_13.txt, sub1_14.txt, sub1_15.txt, sub1_16.txt, sub1_17.txt, sub1_18.txt, sub1_19.txt, sub1_20.txt, sub1_21.txt, sub1_22.txt, sub1_23.txt, sub1_24.txt, sub1_25.txt, sub1_26.txt, sub1_27.txt, sub1_28.txt
Case Name Status Exec Time Memory
sample_01.txt AC 4 ms 3396 KiB
sample_02.txt AC 5 ms 3732 KiB
sub1_01.txt AC 143 ms 27668 KiB
sub1_02.txt AC 142 ms 27620 KiB
sub1_03.txt AC 143 ms 27676 KiB
sub1_04.txt AC 143 ms 27624 KiB
sub1_05.txt AC 5 ms 5404 KiB
sub1_06.txt AC 18 ms 12056 KiB
sub1_07.txt AC 21 ms 13680 KiB
sub1_08.txt AC 27 ms 16056 KiB
sub1_09.txt AC 26 ms 16012 KiB
sub1_10.txt AC 26 ms 16004 KiB
sub1_11.txt AC 75 ms 10504 KiB
sub1_12.txt AC 45 ms 7556 KiB
sub1_13.txt AC 117 ms 14828 KiB
sub1_14.txt AC 23 ms 7396 KiB
sub1_15.txt AC 6 ms 4184 KiB
sub1_16.txt AC 3 ms 3668 KiB
sub1_17.txt AC 1 ms 3524 KiB
sub1_18.txt AC 1 ms 3400 KiB
sub1_19.txt AC 1 ms 3508 KiB
sub1_20.txt AC 92 ms 17860 KiB
sub1_21.txt AC 68 ms 14228 KiB
sub1_22.txt AC 98 ms 19484 KiB
sub1_23.txt AC 51 ms 11852 KiB
sub1_24.txt AC 127 ms 20356 KiB
sub1_25.txt AC 91 ms 15548 KiB
sub1_26.txt AC 32 ms 10504 KiB
sub1_27.txt AC 71 ms 17860 KiB
sub1_28.txt AC 43 ms 7632 KiB