NOIP16提高组赛前训练20-day2 T2:种花 flower(组合数学)

NOIP16提高组赛前训练20-day2 T2:种花 flower

题目描述:

OI太可怕了,我决定回家种田.
我在后院里开辟了一块圆形的花圃,准备种花.种花是一种艺术,通过一定技术手法,花材的排列组合会让花变得更加的赏心悦目,这就是花艺.
当然你知道,我在种田之前是OIer,所以我不懂花艺,只会排列组合.我把花圃从圆心向外画线,分成了N块扇形,分别编号为1,2,3…..N,再从村里的商店采购了M种花.然后我大胆的决定:花圃中的每块只种M种花中的一种,相邻的两块不能种同一种花.我反应比较慢,所以我请来了机房里手速最快的强袭黯灭勋章鱼人守卫来帮我,让他试一下每种排列,看看哪种最令人赏心悦目.
有一些人,他们的美丽就在身边,也许就在自己身上,像艺术家一样,他们的眼光独到特别,可就因为他们不是艺术家,他们不被人们认可,被称之为另类.简单真实的事情总可以绽放最鲜艳的花,我欣赏这样的人的心理,当然拒绝粗鲁地对待一切.
正想着,他居然告诉我已经尝试完了.这怎么可能?这可一共有…….多少种方案来着?
众所周知的是,我的智商很低.
我想知道种花的方案一共有几种.

输入格式:

仅一行,包含两个整数,分别为N和M.

输出格式:

仅一行,包含一个整数,表示方案数.这个数可能很大,你只需要输出这个数对1000000007取模的结果.

样例输入:

3 3

样例输出:

6

数据范围:

对于20%的数据,0

时间限制:

1S

空间限制:

128M

题目分析:

数据辣么大,显然是要推导式子的.
抽象出来就是个染色问题,设当前有n块,m种颜色去染.
设答案为 an ,那么对于第一块可以染m种颜色,其余2~n块只能染m-1种颜色,那么实际上就有 an=m(m1)n1 ,但是这当中计算了第一块与第n块同色的情况.而若将第一块和最后一块看成一块,实际上这些情况的个数就为 an1 ,那么就有

an=m(m1)n1an
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值