HDU5478——Can you find it(快速幂)
来源:互联网 发布:modbus单片机程序 编辑:程序博客网 时间:2024/05/01 12:31
题目链接
此题的大意是给你一个式子
这道题是一道快速幂的题目但结合了同余式,所以事先得对同余式进行化简。
参考了网上的想法,当n=1时,a^(k1+b1) + b = 0 (mod C) ①
当n=2时,a^(2*k1+b1) + b^(k2+1) = 0 (mod C) ②
对①式两边同乘a^k1得:a^k1 * (a^(k1+b1) + b) = 0 (mod C) 即:a^(2*k1+b1) + a^k1 * b =0 (mod C) ③
结合②③得a^(2*k1+b1) + a^k1 * b =a^(2*k1+b1) + b^(k2+1)0 (mod C) ④
化简④式得a^k1 = b^k2 ⑤
得到⑤式后,因为要将(a,b)按字典序输出,所以for循环将a从1开始循环至C,对于每一个a的值用快速幂求出
a^(k1+b1),然后由①式得到b,在用快速幂算出a^k1 和 b^k2以判断⑤式是否成立,成立输出即可,数据用long long类型。
#include<iostream>#include<cstdio>#include<cstring>using namespace std;typedef long long LL;LL pow_mod(LL a,LL n,LL m){ if(n==0) return 1; LL x=pow_mod(a,n/2,m); LL ans = x*x%m; if(n%2==1)ans=ans*a%m; return ans;}int main(){ //freopen("input.txt","r",stdin); int time=0; LL c, k1, k2, b1; while(scanf("%lld%lld%lld%lld",&c,&k1,&b1,&k2)!=EOF) { time++; printf("Case #%d:\n",time); bool flag=0; for(LL i=1;i<c;i++) { LL left=pow_mod(i,k1,c); LL b=c-pow_mod(i,k1+b1,c); LL right=pow_mod(b,k2,c); if(left==right) { flag=1; printf("%lld %lld\n",i,b); } } if(!flag) printf("-1\n"); } return 0;}
- HDU5478——Can you find it(快速幂)
- HDU5478 Can you find it (快速幂)
- hdu5478 Can you find it+快速幂
- HDU5478 Can you find it 快速幂取模
- HDU5478 Can you find it
- hdu5478 Can you find it
- hdu5478 Can you find it(数学规律)
- hdu5478 Can you find it(数学)
- HDU5478 Can you find it【同余问题】
- HDU——Can you find it?
- hdoj 5478 Can you find it 【找恒等式 + 快速幂】
- HDU 5478 Can you find it(快速幂)——2015 ACM/ICPC Asia Regional Shanghai Online
- HDU 5478 Can you find it(数学归纳法 + 快速幂)——2015 ACM/ICPC Asia Regional Shanghai Online
- can you find it?
- Can you find it?
- Can you find it?
- Can you find it?
- can you find it?
- 用Dialog实现自定义对话框
- iOS 开发-字典转模型
- 关于ARP、MAC、IP欺骗以及TCP劫持
- HDU 5317 RGCDQ 【筛法+前缀记录】
- tarjan算法----求强连通分量
- HDU5478——Can you find it(快速幂)
- Codeforces 590A Median Smoothing
- [LeetCode] 14. Longest Common Prefix
- hdu 1058
- 带头结点的单链表
- 解决git error: failed to push some refs to 'git@github.com:
- 重新认识决策树系列算法和逻辑斯特回归(一)
- 基于tetgen对曲面分隔的box区域做限定四面体剖分
- View详解之二View的事件体系