首页 > 其他 > 详细

BZOJ 1008 越狱 (组合数学)

时间:2014-07-18 20:19:25      阅读:377      评论:0      收藏:0      [点我收藏+]

题解:正难则反,从总数中减去全部相邻不相同的数目就是答案,n*(n-1)^(m-1):第一个房间有n中染色方案,剩下m-1个房间均只有n-1种染色方案,用总数减就是答案。

#include <cstdio>
const int mod=100003; 
typedef long long LL; 
LL n,m; 
LL power(LL a,LL b){ 
    LL ans=1; 
    a%=mod; 
    while(b){ 
        if(b&1)ans=ans*a%mod; 
        a=a*a%mod,b>>=1; 
    } 
    return ans; 
} 
int main(){ 
    scanf("%lld %lld",&n,&m); 
    printf("%lld\n",(power(n,m)-n%mod*power(n-1,m-1)%mod+mod)%mod); 
    return 0; 
}

BZOJ 1008 越狱 (组合数学),布布扣,bubuko.com

BZOJ 1008 越狱 (组合数学)

原文:http://www.cnblogs.com/forever97/p/bzoj1008.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!