Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
52863 | AK2022071318 | 数学,很美妙吧 | C++ | 运行超时 | 0 | 1000 MS | 308 KB | 492 | 2022-07-20 12:04:48 |
#include <bits/stdc++.h> using namespace std; int n,m,k,ans,mod=100000007; int f(int a,int b) { if(b==0) return 1; if(b%2==1) return a*f(a,b-1)%mod; else { long long m=f(a,b/2)%mod; return m*m%mod; } } void dfs(int t,int tot,int cnt,int x) { if(t==k-1) { ans=(ans+tot+f(n-cnt,m))%mod; return; } for(int i=x; i<n-cnt-k; i++) dfs(t+1,(tot+f(i,m))%mod,cnt+i,i); } int main() { cin>>n>>k>>m; dfs(0,0,0,1); cout<<ans%mod; }