太妙啦!

我们把座位摆成一个环,在添加另一个座位,表示坐了这个位置就会有人生气,那么我们现在要求的就是没人坐它的方案数Ans,但是这个并不好求,我们发现对于每个位置,它们的Ans都是一样的,而且Ans的和就是在这n+1个中选位置选方向的所有方案数中的空位置之和。

所以Ans*(n+1)=All*(n+1-m),All=(2(n+1))^m

 #include <cstdio>
#define mod 1000000007
using namespace std;
int n,m;
int qp(int a,int b){
int c=;
for(;b;b>>=,a=1ll*a*a%mod)
if(b&)c=1ll*c*a%mod;
return c;
}
int main(){
scanf("%d%d",&n,&m);
printf("%lld\n",1ll*qp(*(n+),m)*(n+-m)%mod*qp(n+,mod-)%mod);
return ;
}

最新文章

  1. insertAdjacentHTML方法示例
  2. gulp 使用介绍
  3. 十天冲刺---Day7
  4. linux 远程桌面的配置
  5. prob
  6. Config配置文件详解
  7. 搭建属于自己的wiki
  8. java Spring bean作用域
  9. 拦截QT关闭窗口的CloseEvent
  10. UESTC_Palindromic String 2015 UESTC Training for Search Algorithm &amp; String&lt;Problem M&gt;
  11. ORACLE在表中添加的目光凝视和读取列
  12. 使用wamp扩展php时出现服务未启动的解决方法
  13. Fastify 系列教程四 (求对象、响应对象和插件)
  14. Nginx 限制连接的实践 (DDOS)
  15. 用StyleCop规范团队代码
  16. 出现error: command &#39;x86_64-linux-gnu-gcc&#39; failed with exit status 1
  17. 20165234 《Java程序设计》第六周学习总结
  18. Confluence 6 代理和 HTTPS 设置连接器
  19. 【IDEA】【6】Maven打包
  20. leetcode 772.Basic Calculator III

热门文章

  1. Mysql语句 AND 和 OR 的运用
  2. 读键值对封装成Map
  3. 判断移动端和pc端最简单的方法
  4. Python学习笔记:logging(日志处理)
  5. 浅谈UWB(超宽带)室内定位技术(转载)
  6. ZOJ3329 概率DP
  7. Highest Tower 18中南多校第一场H题
  8. CodeForces 785E Anton and Permutation 分块
  9. 【转】灰色在PPT中的运用
  10. Win10开始菜单中的天气不更新问题的解决方法