多校第十场 1009 Sum
来源:互联网 发布:如何在C中调用python 编辑:程序博客网 时间:2024/06/07 07:07
Sum
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)Total Submission(s): 18 Accepted Submission(s): 9
Problem Description
Sample Input
2
Sample Output
2Hint1. For N = 2, S(1) = S(2) = 1.2. The input file consists of multiple test cases.
Source
2013 Multi-University Training Contest 10
Recommend
zhuyuanchen520
题目就是这个意思,所以跟我们前面有一场比赛里面的整数拆分一样,最后的结果就是2^(n-1) ,由于n=10^100000 ,很大,所以普通的快速幂和高精度乘法没法过,数学好的同学肯定一下就能想到这题的解,有了思路代码就不难了,费马小定理是这样说的:
费马小定理是数论中的一个定理:假如a是一个整数,p是一个质数,那么是p的倍数,可以表示为
如果a不是p的倍数,这个定理也可以写成
2^(n-1)%mod=2^((mod-1)*k+p)%mod=2^p%mod=2^((n-1)%(mod-1))%mod;这样我们就可以直接用快速幂将结果求出来了。
代码:
#include <cstdio>#include <cstring>#include <algorithm>#define maxn 100003#define mod 1000000007typedef long long LL;LL bit[maxn];char str[maxn];LL quick_pow(LL a,LL p){LL tmp = 1;while(p){if( p&1 ) tmp = tmp * a % mod;a = a * a % mod;p >>= 1;}//printf("%I64d\n",tmp );return tmp;}int main(){int n , i ; bit[0] = 1;for(i = 1;i < maxn; i++)bit[i] = (bit[i-1]%(mod-1)*10)%(mod-1);//bit[i]表示10^i%(mod-1)while(~scanf("%s",str)){n = strlen(str);i = n-1;str[i]--;while( str[i]<'0'){str[i] = '9';str[i-1]--;i--;}LL res = 0;for(i = n-1 ; i >= 0 ; i--)res = (res + (str[n-i-1] - '0') * bit[i]%(mod-1) )%(mod-1);LL ans = quick_pow( 2, res );printf("%I64d\n",ans );}return 0;}
- 多校第十场 1009 Sum
- hdu 4704 Sum 多校第十场
- 2013 多校第十场 1009 sum 欧拉定理 快速幂 高精度
- 多校第十场
- 多校比赛第十场
- 多校联赛第十场
- 多校第十场1009 CRB and String题解
- hdu 4705 Y 多校第十场
- hdu 4696 Answers 多校第十场
- hdu 4704 Sum/杭电2013年多校第十场1009 快速幂+循环
- hdu 4704--sum(多校赛第十场)快速幂
- hdu 4699 Editor 多校第十场 (模拟)
- HDU 4710 Game(多校第十场)
- 多校第十场:HDU 4973 树状数组+前缀+二分
- hdu 5862 Counting Intersections多校第十场
- hdu 6181 Two Paths (多校第十场)
- HDU 6178 Monkeys(树上DP 17多校第十场)
- 2017多校联合第十场/HDU 6180 Schedule (贪心)
- Hadoop集群配置(最全面总结)
- android GridView 通过json显示网络图片和文字
- Linux Commands for Beginners--Changing Ownership --chown command
- exit 与 return 的区别
- 如何优化cocos2d程序的内存使用和程序大小:第二部分(完)
- 多校第十场 1009 Sum
- 学习
- 谈谈我这几年的C++学习之路
- 关于java23种设计模式
- JSON数据解析
- 天乙社区社区首页分析(三)
- 加载listview配合适配器的使用
- 飞鸽原创博客,真正的飞鸽官方博客
- JDBC介绍