广义欧拉降幂对于狭义欧拉降幂任然适用

https://blog.csdn.net/qq_37632935/article/details/81264965?tdsourcetag=s_pctim_aiomsg

bzoj388

#include<bits/stdc++.h>
using namespace std;
#define ll long long ll Pow(ll a,ll b,ll p){
ll res=;
while(b){
if(b%)
res=res*a%p;
b>>=;a=a*a%p;
}
return res;
}
ll phi(ll x){
ll res=x,tmp=x;
for(ll i=;i*i<=tmp;i++)
if(tmp%i==){
res=res*(i-)/i;
while(tmp%i==)tmp/=i;
}
if(tmp>)
res=res*(tmp-)/tmp;
return res;
} ll f(ll p){
if(p==)return ;
ll q=phi(p);
return Pow(,q+f(q),p);
} int main(){
int t;ll p;cin>>t;
while(t--){
cin>>p;
cout<<f(p)<<'\n';
}
}

fzu1759 注意在计算phi时要用先除再乘,防止爆精度

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
#define ll long long
#define maxn 1000005
char b[maxn];
ll A,C,B; ll phi(ll x){
ll res=x,tmp=x;
for(ll i=;i*i<=tmp;i++)
if(tmp%i==){
res=res-res/i;
while(tmp%i==)
tmp/=i;
}
if(tmp>)
res=res-res/tmp;
return res;
}
ll Pow(ll a,ll b,ll p){
ll res=;
while(b){
if(b%)
res=res*a%p;
b>>=;a=a*a%p;
}
return res;
} int main(){
while(cin>>A){
scanf("%s",b);
cin>>C;
ll p=phi(C);
int len=strlen(b);
B=;
for(int i=;i<len;i++)
B=(B*+b[i]-'')%p;
cout<<Pow(A,B,C)<<'\n';
}
}

广义欧拉降幂(欧拉定理)——bzoj3884,fzu1759的更多相关文章

  1. ACM-数论-广义欧拉降幂

    https://www.cnblogs.com/31415926535x/p/11447033.html 曾今一时的懒,造就今日的泪 记得半年前去武大参加的省赛,当时的A题就是一个广义欧拉降幂的板子题 ...

  2. Power Tower(广义欧拉降幂)

    题意:https://codeforc.es/contest/906/problem/D 计算区间的: ai ^ ai+1 ^ ai+2.......ar . 思路: 广义欧拉降幂: 注意是自下而上递 ...

  3. Codeforces Round #454 D. Power Tower (广义欧拉降幂)

    D. Power Tower time limit per test 4.5 seconds memory limit per test 256 megabytes input standard in ...

  4. The Preliminary Contest for ICPC Asia Nanjing 2019 B. super_log (广义欧拉降幂)

    In Complexity theory, some functions are nearly O(1)O(1), but it is greater then O(1)O(1). For examp ...

  5. BZOJ 3884——欧拉降幂和广义欧拉降幂

    理论部分 欧拉定理:若 $a,n$ 为正整数,且 $a,n$ 互质,则 $a^{\varphi (n)} \equiv 1(mod \ n)$. 降幂公式: $$a^b=\begin{cases}a^ ...

  6. Codeforces Round #454 (Div. 1) CodeForces 906D Power Tower (欧拉降幂)

    题目链接:http://codeforces.com/contest/906/problem/D 题目大意:给定n个整数w[1],w[2],……,w[n],和一个数m,然后有q个询问,每个询问给出一个 ...

  7. 2018牛客网暑期ACM多校训练营(第四场) A - Ternary String - [欧拉降幂公式][扩展欧拉定理]

    题目链接:https://www.nowcoder.com/acm/contest/142/A 题目描述 A ternary string is a sequence of digits, where ...

  8. 欧拉函数&欧拉定理&降幂 总结

    欧拉函数&欧拉定理&降幂 总结 标签:数学方法--数论 阅读体验:https://zybuluo.com/Junlier/note/1300214 这年头不总结一下是真的容易忘,老了老 ...

  9. bzoj3884: 上帝与集合的正确用法 欧拉降幂公式

    欧拉降幂公式:http://blog.csdn.net/acdreamers/article/details/8236942 糖教题解处:http://blog.csdn.net/skywalkert ...

随机推荐

  1. 2019-5-16-WPF-光标初始化的时候-temp-文件夹满了无法创建

    title author date CreateTime categories WPF 光标初始化的时候 temp 文件夹满了无法创建 lindexi 2019-05-16 19:16:27 +080 ...

  2. 17. final 关键字

    1.flnal修饰成员变量   1)定义: 如果一个变量不想被修改,那么就用final修饰 2)语法 public static final double PI=3.14; 3)注意 1. 被fina ...

  3. PHPExcel导出数据量过大处理

    今天使用PHPExce插件导不出数据,发现是数据量过大的原因,这里只做简单的处理. 1.导出超时处理:在执行页面添加:set_time_limit(0); 2.内存溢出:在执行页面添加:ini_set ...

  4. leetcood学习笔记-257-二叉树的所有路径

    题目描述: 第一次提交:参考113-路径总和② class Solution: def binaryTreePaths(self, root: TreeNode) -> List[str]: r ...

  5. FFmpeg Download

    https://ffmpeg.zeranoe.com/builds/

  6. CSS——背景及应用

    CSS 可以添加背景颜色和背景图片,以及进行图片设置. none : 无背景图(默认的) url : 使用绝对或相对地址指定背景图像 background-image 属性允许指定一个图片展示在背景中 ...

  7. 我们能从java的HelloWorld学到什么?

    这是每个Java程序员都知道的.虽然简单,但是从一个简单的问题可以引入更深的思考.在这篇文章中,我们将讨论这个简单的程序.如果能更多的帮到你,请留下宝贵的意见. HelloWorld.java pub ...

  8. 在Panel上绘图的实现

    近期制作了FDS的一个建模工具,由于知识有限,做出的效果是2D的.昨天上课的时候看老师画一个长方体,突然想到,为什么不给普通的2D图形加画上几条直线,就能实现2D图形的3D视觉效果呢?于是回来马上做了 ...

  9. [JZOJ 5810] 简单的玄学

    思路: 就是考虑一个结论 对于\(1<=x<=2^n\),那么\(x\)与\(2^n - x\)中的2的个数相等. 证明: 我们将\(x\)表示成\(2^k*b\),那么\(2^n - x ...

  10. 在Word中如何自动生成参考文献引用

    来自:在Word中如何自动生成参考文献引用 在写毕业论文时,参考文献动辄就有四五十篇,在文中对照参考文献逐一引用是一件十分痛苦的事情,而且一旦参考文献的顺序发生变化,文中的引用也要逐个修改,那么,我们 ...