博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU4602+推导公式
阅读量:4948 次
发布时间:2019-06-11

本文共 1383 字,大约阅读时间需要 4 分钟。

手动列出前5项 可发现规律

1 /* 2 推导公式 3 a[n] = 2^(n-1) + (n-2)*2^(n-3) 4 */ 5 #include
6 #include
7 #include
8 using namespace std; 9 typedef long long int64;10 const int64 mod = 1e9+7;11 12 int64 FastPow( int64 n,int64 m ){
//n^m13 int64 sum = 1;14 while( m>=1 ){15 if( m%2==1 ){16 sum *= n;17 sum %= mod;18 }19 n *= n;20 n %= mod;21 m/=2;22 }23 return sum;24 }25 26 int main(){27 int T;28 scanf("%d",&T);29 while( T-- ){30 int64 n,k;31 //scanf("%lld%lld",&n,&k);32 scanf("%I64d%I64d",&n,&k);33 if( k>n ){34 printf("0\n");35 continue;36 }37 if( k==n ){38 printf("1\n");39 continue;40 }41 int64 delta = k-1;42 int64 Index = n-delta;43 44 if( Index==1 ){45 printf("1\n");46 continue;47 }48 if( Index==2 ){49 printf("2\n");50 continue;51 }52 53 //printf("%lld\n",(FastPow2(2,Index-1)%mod+FastPow2(2,Index-3)*(Index-2)%mod)%mod);54 printf("%I64d\n",(FastPow(2,Index-1)%mod+FastPow(2,Index-3)*(Index-2)%mod)%mod);55 }56 return 0;57 }
View Code

 

转载于:https://www.cnblogs.com/xxx0624/p/3250257.html

你可能感兴趣的文章
ecliplse集成SVN
查看>>
1、VMware安装步骤
查看>>
本周学习进度表及时间安排(2017-12-31~2018-1-6)
查看>>
mysql 实行模糊查询 一个输入值匹配多个字段和多个输入值匹配一个字段
查看>>
hdu 1102(最小生成树)
查看>>
JavaScript对象及初识面向对象
查看>>
mac安装nose,command not found:nosetests
查看>>
抓取cntv电视节目表
查看>>
【刷题】洛谷 P3613 睡觉困难综合征
查看>>
操作系统简介
查看>>
过滤器和拦截器的区别
查看>>
jdk 设计模式
查看>>
js对话框弹窗
查看>>
.NET中怎么有效的使用Cache
查看>>
结对学习感想
查看>>
Tomcat源码分析(从启动流程到请求处理)
查看>>
onPullDownRefresh函数没有被正确执行
查看>>
【原创】Activity 概念介绍(大全)
查看>>
从零讲解搭建一个NIO消息服务端
查看>>
VS 插件
查看>>