首页 > 代码库 > HDU 4704 Sum( 费马小定理 )
HDU 4704 Sum( 费马小定理 )
HDU 4704 Sum( 费马小定理 )
理解能力果然拙计,,题目看半天没懂什么意思。
#include <cstdio>#include <cstring>#include <algorithm>using namespace std;typedef long long LL;#define MOD 1000000007char str[100010];LL fast_mod( LL a, int b){ LL res = 1; while( b ) { if( b & 1 ) res = res * a % MOD; a = a * a % MOD; b >>= 1; } return res;}void Orz(){ while( ~scanf( "%s", str ) ) { LL n = 0; for( int i = 0; str[i]; ++i ) n = ( n * 10 + str[i] - ‘0‘ ) % ( MOD - 1 ); printf( "%I64d\n", fast_mod( 2, n - 1 ) ); }}int main(){ Orz(); return 0;}
HDU 4704 Sum( 费马小定理 )
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。