POJ 2115 C Looooops——拓展欧几里得算法
来源:互联网 发布:时间轴网页 源码 编辑:程序博客网 时间:2024/05/24 00:05
这个题和POJ1061基本相同,1061的解释比较详细,需要的话可以看一下http://blog.csdn.net/hao_zong_yin/article/details/72356640
#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespace std;typedef long long ll;ll A, B, C, k, a, b, c, x, y, gcd;ll ex_gcd(ll a, ll b, ll &x, ll &y) { if (b == 0) { x = 1, y = 0; return a; } ll q = ex_gcd(b, a % b, y, x); y -= a / b * x; return q;}int main(){ while (scanf("%lld %lld %lld %lld", &A, &B, &C, &k) == 4 && (A + B + C + k)) { a = C, b = (ll)1<<k, c = B - A; gcd = ex_gcd(a, b, x, y); if (c % gcd) { printf("FOREVER\n"); continue; } b /= gcd; x = ((x * (c/gcd)) % b + b) % b; printf("%lld\n", x); } return 0;}
阅读全文
0 0
- POJ 2115 C Looooops——拓展欧几里得算法
- POJ - 2115 C Looooops(拓展欧几里得)
- POJ 2115 C Looooops 拓展欧几里得
- POJ 2115 C Looooops(拓展欧几里得)
- poj C Looooops 类似青蛙的约会,拓展欧几里得算法
- POJ 2115 C Looooops 扩展欧几里得算法
- poj 2115 C Looooops【数论】【欧几里得算法】
- poj 2115 C Looooops (扩展欧几里得算法)
- poj 2115 C Looooops 扩展欧几里得算法
- POJ 2115 C Looooops (扩展欧几里得算法)
- POJ 2115 C Looooops <扩展欧几里得算法>
- poj C Looooops 2115 (拓展欧几里得+数学)
- POJ 2115 C Looooops (拓展的欧几里得) 拓展的欧几里得详解
- [数论]POJ 2115/HOJ 1787 C Looooops 扩展欧几里得算法
- (模板题)poj 2115 C Looooops(扩展欧几里得算法)
- 20140714 「初等数论 - 拓展欧几里得+同余模方程」POJ 2115 C Looooops
- POJ 2115 C Looooops(扩展欧几里得)
- poj 2115 C Looooops(扩展欧几里得)
- 【usaco2017 March Platinum】Modern Art
- 汇编语言 编写程序,如果输入的是大写字母,则输出对应的小写字母;如果输入的是小写字母,则输出对应的大写字母;如果输入的是数字,原样输出;按回车结束
- 贪心法--背包问题(不是0/1背包问题)
- eclipse给JVM设置参数后程序启动失败
- LINUX编译错误总结
- POJ 2115 C Looooops——拓展欧几里得算法
- 汇编语言 将字符串中大写转换为小写 小写转换为大写 数字不变
- 57. Insert Interval
- 【转】共享文件:硬链接和软链接
- 图片预装载
- 汇编:分别将正数负数输出 并输出各有多少个正负数 代码: ;目的是判断有多少个正数并输出 且输出正数有多少个 负数输出 且输出有多少个
- HTML标签全称
- Java中Vector的使用
- 汇编语言 :从键盘输入一个单个字符,显示该字符的ASCII码,回车键退出循环,终止程序