首页 > 其他分享 >CF838D题解

CF838D题解

时间:2022-08-24 15:25:46浏览次数:64  
标签:int 题解 1ll CF838D ans pow 节点 mod

很厉害的题。

考虑将原本的座位串成一个环,然后加一个节点在 \(1\) 的前面 \(n\) 的后面。

原问题等价为新节点不被座到的方案数。容易发现所有节点被座到和不被座到的方案数相同,所以答案就是 \((2n+2)^m\times\frac{n+1-m}{n+1}\)。

#include<cstdio>
const int mod=1e9+7;
int n,m;
inline int pow(int a,int b=mod-2){
	int ans(1);for(;b;b>>=1,a=1ll*a*a%mod)if(b&1)ans=1ll*ans*a%mod;return ans;
}
signed main(){
	scanf("%d%d",&n,&m);printf("%d",1ll*pow(2*n+2,m)*(n+1-m)%mod*pow(n+1)%mod);
}

标签:int,题解,1ll,CF838D,ans,pow,节点,mod
From: https://www.cnblogs.com/lmpp/p/16620039.html

相关文章

  • 关于npm ERR! ERESOLVE could not resolve 问题解决
    1、问题描述从代码仓库拉取代码到本地,执行npminstall命令安装项目依赖,提示如下图错误  问题出现的原因由于npm版本问题,npm不同版本库之间命令不兼容。解决办法:执......
  • App 自动化测试实战技巧与经典面试题解析
    ⬇️点击“下方链接”,提升测试核心竞争力!>>更多技术文章分享和免费资料领取移动互联网时代,为了高效应对App多端发布、多版本发布、多机型发布等质量挑战,App自动化测试......
  • [题解]轮流拿牌问题_一道博弈论笔试题(C++)
    题目A和B轮流从一个数组左右两端取数,A先B后,每次取一个数,最终取数总和大者获胜,两人每次都会选择最有利的策略,求获胜者取数的和。思路笔试时遇到的一道算法题,也是博弈论中......
  • ARC099F题解
    被杀了,记录一下好了。对于他那个数组是否相等,直接判断复杂度很高,考虑通过哈希映射之后判断是否相等。对数组的Hash可以类似字符串Hash那样去做。于是判断一个区间是......
  • laravel+mews/captcha 打开页面后的首次验证码总是验证失败的问题解决
    出现问题的原因验证码获取后,还有其他的接口请求,导致验证码的缓存被覆盖(参考文章:LaravelSession遇到的坑)解决办法修改vendor/mews/captcha/src/Captcha.php源码,将......
  • AtCoder Grand Contest 058 部分题目不简要题解
    从这里开始比赛目录ProblemA MakeitZigzag考虑使$1,3,5,7,\cdots,2n-3$这些位置后三个中的最大值在中间,最后再处理一下最后两个位置就行了。Cod......
  • ECfinal2021部分题解
    把赛中没有过的题争取补一下题目链接:https://codeforces.com/gym/103861C:其实,最后每一种字符只有两种状态:1.出现了x,此时就已经知道该字符有多少个了2.没有出现x,那么相......
  • 题解 CF1712D Empty Graph
    CF1712D洛谷的CF的提交无了,所以可能没人来看了,但是在题解区是清一色的二分,而唯一一篇贪心题解的讨论还略显复杂的情况下,我还是希望提供一种比较简洁的贪心题解。在复杂......
  • P5753 瓷片项链 题解
    题目分析很容易发现只要烧制所有瓷片的损耗小于总量,就能烧制成项链。不妨设烧制了\(n\)片,则总长度为\(n\times0.3\sqrt{v-v0}\)。本题数据范围较小,\(n\)的大......
  • CF1715C Monoblock 题解
    思路根据题意我们不难看出,求一个区间的块的数量即求区间内\(a_i\neqa_{i-1}\)的数量,如果直接枚举每个区间的话,时间复杂度是\(\mathcalO(n^2)\)显然这样做是不行的,但......