Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
52767 氢氦锂铍硼 数学,很美妙吧 C++ 运行超时 0 1000 MS 256 KB 712 2022-07-20 11:52:19

Tests(0/10):


#include <bits/stdc++.h> using namespace std; #define ll long long const ll mod=10e9+7; ll n,m,k,cnt,a[1005]; ll ans; long long Qp(ll m,ll n) { n-=1; ll tmp=m; while(n) { if(n&1) { m*=tmp; m%=mod; } tmp=tmp*tmp%mod; n>>=1; } return m; } void dfs(ll sum,ll lst,ll group) { if((group==0&&sum!=0)||(group!=0&&sum==0)) return; if(sum==0&&group==0) { for(int i=1; i<=cnt; i++) ans=(ans+Qp(a[i],m))%mod; } for(int i=lst+1; i<=sum; i++) { a[++cnt]=i; dfs(sum-i,i,group-1); cnt--; } } int main() { scanf("%lld%lld%lld",&n,&k,&m); dfs(n,0,k); cout<<ans%mod<<endl; return 0; }


测评信息: