zoukankan      html  css  js  c++  java
  • FZU1759(SummerTrainingDay04-B 欧拉降幂公式)

    Problem 1759 Super A^B mod C

    Accept: 1056    Submit: 3444
    Time Limit: 1000 mSec    Memory Limit : 32768 KB

    Problem Description

    Given A,B,C, You should quickly calculate the result of A^B mod C. (1<=A,C<=1000000000,1<=B<=10^1000000).

    Input

    There are multiply testcases. Each testcase, there is one line contains three integers A, B and C, separated by a single space.

    Output

    For each testcase, output an integer, denotes the result of A^B mod C.

    Sample Input

    3 2 4 2 10 1000

    Sample Output

    1 24

    Source

    FZU 2009 Summer Training IV--Number Theory
     
     1 //2017-08-04
     2 #include <cstdio>
     3 #include <cstring>
     4 #include <iostream>
     5 #include <algorithm>
     6 #define ll long long 
     7 
     8 using namespace std;
     9 
    10 const int N = 1000010;
    11 char b[N];
    12 ll a, c;
    13 
    14 ll quick_pow(ll a, ll n, ll MOD){
    15     ll ans = 1;
    16     while(n){
    17         if(n&1)ans = ans*a%MOD;
    18         a = a*a%MOD;
    19         n>>=1;
    20     }
    21     return ans;
    22 }
    23 
    24 ll phi(ll n){
    25     ll ans = n;
    26     for(ll i = 2; i*i <= n; i++){
    27         if(n%i==0){
    28             ans -= ans/i;
    29             while(n%i==0)
    30                 n /= i;
    31         }
    32     }
    33     if(n > 1)ans = ans - ans/n;
    34     return ans;
    35 }
    36 
    37 int main()
    38 {
    39     while(scanf("%lld%s%lld", &a, b, &c)!=EOF){
    40         ll len = strlen(b);
    41         ll MOD = phi(c), num = 0;
    42         for(ll i = 0; i < len; i++)
    43             num = (num*10 + b[i]-'0')%MOD;
    44         num += MOD;
    45         printf("%lld
    ", quick_pow(a, num, c));
    46     }
    47     return 0;
    48 }
  • 相关阅读:
    项目中的注意事项
    复合查询
    树型控件的处理(完整版)
    图的存储结构(邻接矩阵)
    图的定义与术语2 数据结构和算法55
    图的存储结构(邻接矩阵)
    赫夫曼编码 数据结构和算法52
    赫夫曼编码 数据结构和算法52
    图的存储结构(邻接矩阵)
    图的定义与术语 数据结构和算法54
  • 原文地址:https://www.cnblogs.com/Penn000/p/7287362.html
Copyright © 2011-2022 走看看