记录编号 605649 评测结果 AAAAAAAAAA
题目名称 2938.[HAOI 2018]苹果树 最终得分 100
用户昵称 Gravatar郑霁桓 是否通过 通过
代码语言 C++ 运行时间 0.720 s
提交时间 2025-09-05 20:44:12 内存使用 10.21 MiB
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
long long n,p,c[2005][2005],f[2005],as;
int main(){
    freopen("2018tree.in","r",stdin);
    freopen("2018tree.out","w",stdout);
    cin>>n>>p,c[0][0]=1;
    for(int i=1;i<=n;i++){
        c[i][0]=1;
        for(int j=1;j<=i;j++) c[i][j]=c[i-1][j]+c[i-1][j-1],c[i][j]%=p;
    }
    f[1]=f[0]=1;
    for(int i=2;i<=n;i++) f[i]=f[i-1]*i%p;
    for(int i=2;i<=n;i++) for(int sz=1;sz<=n-i+1;sz++) as+=sz*(n-sz)%p*i%p*(i-1)%p*c[n-i][sz-1]%p*f[sz]%p*f[n-sz-1]%p,as%=p;
    cout<<as;
    return 0;
}