poj2115-C Looooops -线性同余方程
2016-01-29 22:53
351 查看
线性同余方程的模板题。和青蛙的约会一样。
#include <cstdio> #include <cstring> #define LL long long using namespace std; //A+n*C = B mod 2^k //n*C = B-A mod 2^k LL A,B,C,MOD; int k; LL ExGCD(LL a,LL b,LL &x,LL &y) { LL d,t; if(b==0) { x=1;y=0; return a; } d = ExGCD(b,a%b,x,y); t=x;x=y;y=t-a/b*y; return d; } int main() { while(scanf("%I64d%I64d%I64d%d",&A,&B,&C,&k) && (A||B||C||k)) { LL x,y; LL a=C,b=B-A; MOD = 1LL<<k; LL d = ExGCD(a,MOD,x,y); if(b%d ) { printf("FOREVER\n"); } else { x=(x*(b/d))%MOD; x=(x%(MOD/d)+MOD/d)%(MOD/d); printf("%I64d\n",x); } } }
相关文章推荐
- CentOS6.4下Mysql数据库的安装与配置
- Linux Traffic Control Implement: The Overview阅读笔记
- centos 安装mysql冲突解决方法
- Ubuntu下开启Apache重写扩展
- 腾讯云 linux系统服务器配置流程
- [常用知识]如何在Eclipse、myEclipse中分别配置Tomcat和JBoss应用服务器
- CentOS6.5 Nginx安装
- Linux防火墙简析
- linux源地址转换(一)
- linux 信号 signal函数
- OpenAL alDistanceModel函数使用详解
- 谁也无法挡住我访问Google---使用Nginx反向代理攻略
- Hadoop笔记
- hdu3473Minimum Sum【划分树sum维护】
- 读《大型网站技术架构:核心原理与案例分析+李智慧》记一
- 如何知道该实例对象是否存在属性—propertyName
- cvHoughLines2() 霍夫线变换
- 谁也挡不住你访问Google之使用国外VPS搭建反向代理访问Google
- Linux Bash 通配符
- Linux Unicode 编程