POJ2115 扩展欧几里得
来源:互联网 发布:大数据舆情分析 编辑:程序博客网 时间:2024/05/18 00:45
扩展欧几里得模板题 根据题意理出二元一次方程 A+X*C-B=Y*2^k 移项可得X*C+Y*2^k=B-A
然后扩展欧几里得 就得出答案了
#include <iostream>#include<cstdio>#include<cstring>using namespace std;void exgcd(long long a,long long b,long long &d,long long &x,long long &y){ if(b==0) { x=1; y=0; d=a; return; } else { exgcd(b,a%b,d,x,y); long long temp=x; x=y; y=temp-(a/b)*y; }}int main(){ long long a,b,c,k,m[35],gc,x,y; m[1]=2; for(int i=2; i<=32; i++) m[i]=2*m[i-1]; while(~scanf("%lld%lld%lld%lld",&a,&b,&c,&k)&&(a+b+c+k)) { exgcd(c,m[k],gc,x,y); if((b-a)%gc==0) { x*=((b-a)/gc); x=(x%(m[k]/gc)+m[k]/gc)%(m[k]/gc); printf("%lld\n",x); } else printf("FOREVER\n"); } return 0;}
- POJ2115 扩展欧几里得
- poj2115(扩展欧几里得运用)
- poj2115(扩展欧几里得)
- POJ2115 C Looooops(扩展欧几里得)
- poj2115 C Looooops(扩展欧几里得)
- C Looooops poj2115 (扩展欧几里得+模线性方程)
- POJ2115 C Looooops(扩展欧几里得算法)
- POJ2115:C Looooops(扩展欧几里得)
- POJ2115 C Looooops(扩展欧几里得)
- POJ2115 (扩展欧几里得算法解模线性方程)
- poj2115 Looooops 扩展欧几里德
- poj2115欧几里德扩展
- POJ2115 C Looooops 推广的欧几里得算法
- poj2115 扩展欧几里德算法小结
- poj2115--C Looooops(扩展gcd)
- poj1061 poj2115 扩展欧几里德算法
- 独自poj2115(扩展欧几里德)
- poj2115 扩展欧几里德算法小结
- Extjs中PropertyGrid默认排序问题
- sharepoint designer2010实现图形化导航
- Gentoo系统中文字体设置及fcitx输入法的安装
- [C#]泛型与非泛型集合类的区别及使用例程,包括ArrayList,Hashtable,List<T>,Dictionary<Tkey,Tvalue>,SortedList<Tkey,Tvalue>,
- PBBI Mapifo 11.0 英文汉化版
- POJ2115 扩展欧几里得
- 转载一篇关于ios block内存管理的文章
- apt-get及yum使用简介
- ARM,DSP,FPGA
- MySQL在有索引列情况下select *的输出结果顺序
- OpenGL编程指南第九章:纹理映射
- append()插入table标签,出现ie浏览器不兼容
- Django笔记2
- Oracle 索引 详解