【JZOJ4742】【NOIP2016提高A组模拟9.2】单峰
来源:互联网 发布:java验证码工具类 编辑:程序博客网 时间:2024/05/20 05:54
题目描述
输入
输出
样例输入
2
样例输出
2
数据范围
解法
答案为2^(n-1),快速幂即可。
证明:显然峰值必定为n,那么对于其他n-1个数,要么放在峰值的左边,要么放在峰值的右边,所以方案数为2^(n-1)。
代码
#include<iostream>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#define ll long long#define sqr(x) ((x)*(x))#define ln(x,y) int(log(x)/log(y))using namespace std;const char* fin="aP1.in";const char* fout="aP1.out";const int inf=0x7fffffff;const int mo=1000000007;ll n;ll ans;ll qpower(ll a,ll b){ ll c=1; while (b){ if (b&1) c=(c*a)%mo; a=(a*a)%mo; b>>=1; } return c;}int main(){ scanf("%lld",&n); ans=qpower(2,n-1); printf("%lld",ans); return 0;}
启发
提交时要保证每个变量不会超出int。
0 0
- 【JZOJ4742】【NOIP2016提高A组模拟9.2】单峰
- 【NOIP2016提高A组模拟9.2】单峰
- 单峰【NOIP2016提高A组模拟9.2】
- 【NOIP2016提高组模拟】单峰
- 【jzoj4742】【单峰】
- Jzoj4742 单峰
- 【NOIP2016提高A组模拟9.2】积木
- 积木【NOIP2016提高A组模拟9.2】
- 【JZOJ4743】【NOIP2016提高A组模拟9.2】积木
- 【JZOJ4744】【NOIP2016提高A组模拟9.2】同余
- 【NOIP2016提高A组模拟9.2】同余
- 同余【NOIP2016提高A组模拟9.2】
- 【NOIP2016提高A组模拟7.15】立方体
- 计数【NOIP2016提高A组模拟7.15】
- 【NOIP2016提高A组模拟7.17】寻找
- 【NOIP2016提高A组模拟7.17】寻找
- 【NOIP2016提高A组模拟7.17】锦标赛
- 【NOIP2016提高A组模拟7.17】锦标赛
- 小机房服务器最后的战役 - 战前动员
- 一切成功源于积累——20160903 美国非农15分钟k线直至收盘 各货币对表现 数据复杂 欧美先涨后跌
- 《JAVA与模式》-抽象工厂模式
- 起航
- mysql表类型分析
- 【JZOJ4742】【NOIP2016提高A组模拟9.2】单峰
- 文件查找
- Linux 安装32位兼容库
- Effective Modern C++ 条款27 熟悉替代重载通用引用的方法
- crontab命令格式说明
- 这么做,真的可以吗?
- 错题整理之网络(二)
- 华为oj--字符串截取(最长回文字符串)
- STL_算法(26)_重排和分区 random_shuffle() ;partition() ;stable_partion()