#include<stdio.h>
#include<string.h>
#include<iostream>
#include<string>
#include<queue>
#include<cmath>
#include<map>
#include<algorithm>
#include<vector>
//#define debug
using namespace std;
const int inf = 0x3fffffff;
const int mod = 1000000007;
const int mmax = 1000010;
typedef long long LL;
int n,m,k;
LL inv[mmax];
LL jie[mmax];
LL dp[1100];
void pre()
{
inv[0]=inv[1]=1;
jie[0]=jie[1]=1;
for(int i=2;i<mmax;i++)
{
inv[i]=(LL)(mod-mod/i)*inv[mod%i]%mod;
jie[i]=jie[i-1]*i;
jie[i]%=mod;
}
for(int i=2;i<mmax;i++)
{
inv[i]*=inv[i-1];
inv[i]%=mod;
} }
LL Pow_mod(LL x ,int n)
{
LL res=1,tmp=x;
for(;n;n/=2)
{
if(n&1)
res=(res*tmp)%mod;
tmp=(tmp*tmp)%mod;
}
return res;
}
LL C(int x,int y)
{
if(y>x)
return 0;
return jie[x]*inv[y]%mod*inv[x-y]%mod;
}
void build()
{
dp[0]=0;
dp[1]=1;
for(int i=2;i<=n;i++)
{
dp[i]=Pow_mod(i,n);
for(int j=1;j<i;j++)
{
dp[i]-=dp[i-j]*C(i,j)%mod;
dp[i]=(dp[i]%mod+mod)%mod;
}
}
}
int main()
{
pre();
while(~scanf("%d %d %d",&n,&m,&k))
{
if(m==1)
{
printf("%lld\n",Pow_mod(k,n));
continue;
}
build();
LL cnt=0;
for(int i=0;i<=n;i++)
{
for(int j=0;i+j<=n;j++)
{
LL tmp=1;
tmp=C(k,i)*C(k-i,j)%mod*C(k-i-j,j)%mod;
tmp*=dp[i+j]*dp[i+j]%mod*Pow_mod((LL)i,n*(m-2))%mod;
tmp%=mod;
cnt+=tmp;
cnt%=mod;
}
}
printf("%lld\n",cnt);
}
return 0;
}

swust oj 2516 教练我想学算术 dp+组合计数的更多相关文章

  1. [Swust OJ 581]--彩色的石子(状压dp)

    题目链接:http://acm.swust.edu.cn/problem/0581/ Time limit(ms): 1000 Memory limit(kb): 65535   Descriptio ...

  2. 2014年9月21日_随笔,jdic,ETL,groovy,Nutz好多东西想学

    (1)老妈十一要回老家,才突然发现买票好难啊.有亲朋很重要 (2)这周我做了什么.jdic,ETL,groovy, Nutz好多东西想学. Nutz开发成员专访.Nutz优酷视频(演讲).Nutz 入 ...

  3. [Swust OJ 404]--最小代价树(动态规划)

    题目链接:http://acm.swust.edu.cn/problem/code/745255/ Time limit(ms): 1000 Memory limit(kb): 65535   Des ...

  4. [Swust OJ 649]--NBA Finals(dp,后台略(hen)坑)

    题目链接:http://acm.swust.edu.cn/problem/649/ Time limit(ms): 1000 Memory limit(kb): 65535 Consider two ...

  5. 最近想学Json,请问大家有没有什么好的Json教程介绍一下?

    最近想学json,请问大家有没有什么好的Json教程介绍一下? 最近学完java的框架了,想了解一下json,可是找不到相关视频,请大家有这方面的Json教程好资料就介绍下啦,最后有网址链接啦. {} ...

  6. 少年,想学带修改主席树吗 | BZOJ1901 带修改区间第k小

    少年,想学带修改主席树吗 | BZOJ1901 带修改区间第k小 有一道题(BZOJ 1901)是这样的:n个数,m个询问,询问有两种:修改某个数/询问区间第k小. 不带修改的区间第k小用主席树很好写 ...

  7. 为什么43%前端开发者想学Vue.js

    根据JavaScript 2017前端库状况调查 Vue.js是开发者最想学的前端库.我在这里说明一下我为什么认为这也是和你一起通过使用Vue构建一个简单的App应用程序的原因. 我最近曾与Evan ...

  8. 结合jquery的前后端加密解密 适用于WebApi的SQL注入过滤器 Web.config中customErrors异常信息配置 ife2018 零基础学院 day 4 ife2018 零基础学院 day 3 ife 零基础学院 day 2 ife 零基础学院 day 1 - 我为什么想学前端

    在一个正常的项目中,登录注册的密码是密文传输到后台服务端的,也就是说,首先前端js对密码做处理,随后再传递到服务端,服务端解密再加密传出到数据库里面.Dotnet已经提供了RSA算法的加解密类库,我们 ...

  9. APP爬虫(1)想学新语言,又没有动力,怎么办?

    最近Python和GO语言很火,想学但是只能看得懂21天精通这种级别的教程.公司的项目暂时不会上py或go的技术栈,给的薪资福利待遇还可以,暂时又不想辞职.没有项目实战经验,完全看不懂大神写的干货,怎 ...

随机推荐

  1. tinymce原装插件源码分析(六)-preview

    priview 此插件文件结构比较简单,按钮注册.editor.windowManager.open.窗口出现之前的渲染数据的准备.页面代码的准备. 注意: 1.preview的默认宽高设置: 2.c ...

  2. HDU Integer's Power(容斥原理)

    题意 求[l,r]的最大指数和(1<=l,r<=10^18) 最大指数和(如64=8^2=4^3=2^6,所以64的最大指数和是6) 题解 很明显我们可以先求出[1,n]的最大指数和,然后 ...

  3. Django之ORM的增删改查

    一.添加表记录 对于单表有两种方式 # 添加数据的两种方式 # 方式一:实例化对象就是一条表记录 Frank_obj = models.Student(name ="海东",cou ...

  4. c++PrimerChap8IO库

    #include<iostream> #include<fstream> #include<string> using namespace std; int mai ...

  5. Python求阴影部分面积

    一.前言说明 今天看到微信群里一道六年级数学题,如下图,求阴影部分面积 看起来似乎并不是很难,可是博主添加各种辅助线,写各种方法都没出来,不得已而改用写Python代码来求面积了 二.思路介绍 1.用 ...

  6. 【BZOJ 1192】[HNOI2006]鬼谷子的钱袋

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 设k为最大的正整数满足 \(2^0+2^1+...+2^k<=m\) 如果\(m>2^0+2^1+...+2^k\) 那 ...

  7. PatentTips - Controlling voltage and frequency

    BACKGROUND OF THE INVENTION Mobile devices, such as but not limited to personal data appliances, cel ...

  8. 项目集成Hudson+SonarQube出现的一个问题

    [ERROR] No plugin found for prefix 'sonar' in the current project and in the plugin groups [org.mort ...

  9. Android蓝牙技术Bluetooth使用流程(具体解释)

    一:蓝牙设备之间的通信主要包含了四个步骤 设置蓝牙设备 寻找局域网内可能或者匹配的设备 连接设备 设备之间的传输数据 二:详细编程实现 1. 启动蓝牙功能 首先通过调用静态方法getDefaultAd ...

  10. new,malloc,GlobalAlloc具体解释

    WINDOWS下最好的方式是用VirtualAlloc分配内存,他不是在堆,也不是栈,而是直接在进程的地址空间中保留一快内存.尽管用起来最不方便. 可是速度快,也最灵活 new,malloc,Glob ...