ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#148903 | #37. 染色 | EasonHe | 100 | 2737ms | 118672kb | C++ | 481b | 2022-07-18 18:08:29 | 2022-07-18 18:08:30 |
answer
#include<bits/stdc++.h>
#include<cstdio>
using namespace std;
long long dp[5005][5005],s[5005],p;
long long n,m;
int main()
{
cin>>n>>m>>p;
dp[0][0]=1;
for(int i=1;i<=n;i++){
for(int j=1;j<=min((long long)i,m-1);j++){
dp[i][j]+=dp[i-1][j-1]*(m-j+1);
dp[i][j]%=p;
dp[i][j]+=s[j];
dp[i][j]%=p;
}
for(int j=m-1;j>=1;j--)s[j]=s[j+1]+dp[i][j],s[j]%=p;
}
long long ans=0;
for(int i=1;i<m;i++){
ans+=dp[n][i];
ans%=p;
}
cout<<ans;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 5
Accepted
time: 0ms
memory: 1220kb
input:
5 2 6
output:
2
result:
ok 1 number(s): "2"
Test #2:
score: 5
Accepted
time: 0ms
memory: 1232kb
input:
8 8 562455908
output:
16736896
result:
ok 1 number(s): "16736896"
Test #3:
score: 5
Accepted
time: 0ms
memory: 9044kb
input:
1942 7 873185963
output:
41441893
result:
ok 1 number(s): "41441893"
Test #4:
score: 5
Accepted
time: 5ms
memory: 9444kb
input:
2030 10 187301366
output:
171496026
result:
ok 1 number(s): "171496026"
Test #5:
score: 5
Accepted
time: 0ms
memory: 20024kb
input:
4643 9 998244353
output:
583546139
result:
ok 1 number(s): "583546139"
Test #6:
score: 5
Accepted
time: 121ms
memory: 15204kb
input:
1447 3969 998244353
output:
669602806
result:
ok 1 number(s): "669602806"
Test #7:
score: 5
Accepted
time: 0ms
memory: 2300kb
input:
226 212 998244352
output:
503316480
result:
ok 1 number(s): "503316480"
Test #8:
score: 5
Accepted
time: 4ms
memory: 2748kb
input:
300 292 779230672
output:
95153840
result:
ok 1 number(s): "95153840"
Test #9:
score: 5
Accepted
time: 3ms
memory: 2552kb
input:
269 228 479932618
output:
244481530
result:
ok 1 number(s): "244481530"
Test #10:
score: 5
Accepted
time: 0ms
memory: 2204kb
input:
216 112 207794912
output:
145540448
result:
ok 1 number(s): "145540448"
Test #11:
score: 5
Accepted
time: 3ms
memory: 2688kb
input:
291 261 37264436
output:
28883269
result:
ok 1 number(s): "28883269"
Test #12:
score: 5
Accepted
time: 0ms
memory: 2576kb
input:
273 218 960539553
output:
718739009
result:
ok 1 number(s): "718739009"
Test #13:
score: 5
Accepted
time: 214ms
memory: 46340kb
input:
2991 2318 704783019
output:
517763339
result:
ok 1 number(s): "517763339"
Test #14:
score: 5
Accepted
time: 129ms
memory: 43592kb
input:
4413 790 693631006
output:
634441922
result:
ok 1 number(s): "634441922"
Test #15:
score: 5
Accepted
time: 594ms
memory: 109520kb
input:
4786 4581 2
output:
1
result:
ok 1 number(s): "1"
Test #16:
score: 5
Accepted
time: 580ms
memory: 116716kb
input:
4953 4424 876277826
output:
746769658
result:
ok 1 number(s): "746769658"
Test #17:
score: 5
Accepted
time: 4ms
memory: 22220kb
input:
4921 37 699201223
output:
206663263
result:
ok 1 number(s): "206663263"
Test #18:
score: 5
Accepted
time: 197ms
memory: 57440kb
input:
4991 994 533908193
output:
86765287
result:
ok 1 number(s): "86765287"
Test #19:
score: 5
Accepted
time: 698ms
memory: 118672kb
input:
5000 5000 640462742
output:
518214138
result:
ok 1 number(s): "518214138"
Test #20:
score: 5
Accepted
time: 185ms
memory: 55688kb
input:
4935 1005 961254358
output:
202283451
result:
ok 1 number(s): "202283451"
Extra Test:
score: 0
Extra Test Passed