QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#281527#7774. 基础寄术练习题December45625 0ms1652kbC++141.0kb2023-12-10 11:10:022023-12-10 11:10:03

Judging History

你现在查看的是最新测评结果

  • [2023-12-10 11:10:03]
  • 评测
  • 测评结果:25
  • 用时:0ms
  • 内存:1652kb
  • [2023-12-10 11:10:02]
  • 提交

answer

#include <cstdio>

constexpr int maxn = 100 + 5;

int n, m, p;

inline void add(int& x, int y) {
    (x += y) >= p && (x -= p);
}

int quick_power(int x, int k) {
    int ret = 1;
    for (;;) {
        if (k & 1) {
            ret = (long long) ret * x % p;
        }
        if (!(k >>= 1)) {
            break;
        }
        x = (long long) x * x % p;
    }
    return ret;
}

int inverse(int x) {
    return quick_power(x, p - 2);
}

namespace Case1 {
    int f[maxn];

    void solve() {
        f[0] = 1;
        for (int i = 1; i <= m; i ++) {
            int inv = inverse(i);
            for (int j = n; j; j --) {
                add(f[j], (long long) f[j - 1] * inv % p);
            }
        }
        printf("%d\n", f[n]);
    }
}

namespace Case2 {
    void solve() {

    }
}

int main() {
    int k;
    scanf("%d%d%d%d", &n, &m, &k, &p);

    if (k == 1) {
        Case1::solve();
    } else {
        Case2::solve();
    }

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 0
Wrong Answer

Test #1:

score: 10
Accepted
time: 0ms
memory: 1608kb

input:

9 16 1 327134593

output:

162102742

result:

ok single line: '162102742'

Test #2:

score: 0
Accepted
time: 0ms
memory: 1640kb

input:

11 18 1 834359503

output:

256188485

result:

ok single line: '256188485'

Test #3:

score: 0
Accepted
time: 0ms
memory: 1612kb

input:

18 18 1 614802701

output:

552168146

result:

ok single line: '552168146'

Test #4:

score: -10
Wrong Answer
time: 0ms
memory: 1348kb

input:

7 16 2 861918403

output:


result:

wrong answer 1st lines differ - expected: '306693876', found: ''

Subtask #2:

score: 25
Accepted

Test #6:

score: 25
Accepted
time: 0ms
memory: 1532kb

input:

60 98 1 715015339

output:

690737273

result:

ok single line: '690737273'

Test #7:

score: 0
Accepted
time: 0ms
memory: 1652kb

input:

96 97 1 507892589

output:

481151247

result:

ok single line: '481151247'

Test #8:

score: 0
Accepted
time: 0ms
memory: 1632kb

input:

90 95 1 621080027

output:

255353202

result:

ok single line: '255353202'

Test #9:

score: 0
Accepted
time: 0ms
memory: 1632kb

input:

85 94 1 297115421

output:

122254364

result:

ok single line: '122254364'

Test #10:

score: 0
Accepted
time: 0ms
memory: 1576kb

input:

81 91 1 460412027

output:

148037986

result:

ok single line: '148037986'

Subtask #3:

score: 0
Wrong Answer

Test #11:

score: 0
Wrong Answer
time: 0ms
memory: 1340kb

input:

29 29 2 545875273

output:


result:

wrong answer 1st lines differ - expected: '171843225', found: ''

Subtask #4:

score: 0
Wrong Answer

Test #16:

score: 0
Wrong Answer
time: 0ms
memory: 1388kb

input:

27 30 2 360712453

output:


result:

wrong answer 1st lines differ - expected: '80987914', found: ''

Subtask #5:

score: 0
Wrong Answer

Test #21:

score: 0
Wrong Answer
time: 0ms
memory: 1476kb

input:

29 38 2 909155077

output:


result:

wrong answer 1st lines differ - expected: '745973305', found: ''

Subtask #6:

score: 0
Wrong Answer

Test #26:

score: 0
Wrong Answer
time: 0ms
memory: 1480kb

input:

57 66 2 767174999

output:


result:

wrong answer 1st lines differ - expected: '315351738', found: ''

Subtask #7:

score: 0
Wrong Answer

Test #31:

score: 0
Wrong Answer
time: 0ms
memory: 1436kb

input:

96 96 2 453296971

output:


result:

wrong answer 1st lines differ - expected: '222864385', found: ''