模板题

#include<iostream>
#include<cmath>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
typedef long long ll;
ll x,y;
void exgcd(ll a,ll b){if(b == 0){ x = 1;y = 0;return;}exgcd(b,a%b);ll t = y;y = x - a / b * t;x = t;
}
ll getgcd(ll a, ll b)
{if(b == 0)   return a;else   return getgcd(b, a % b);
}
int main()
{ll A, B, C, k, a, b, c, n, gcd, n1;while(1){scanf("%lld%lld%lld%lld",&A,&B,&C,&k);if(A+B+C+k == 0)  break;n = (ll)1<<k;a = C;b = B-A;if(b == 0){printf("0\n");continue;}gcd = getgcd(a,n);if(b % gcd != 0 || n < B){printf("FOREVER\n");continue;}exgcd(a,n);x = x * b / gcd;n1 = n / gcd;if(x <= 0){x = (x % n1 + n1) % n1;}else   x = x % n1;printf("%lld\n",x);}return 0;
}

poj2115—扩展欧几里得相关推荐

  1. 扩展欧几里得 POJ 1061

    感觉这道题目的数据好水啊...我的代码我都觉得姿势特别奇怪...竟然还过了... 好吧,原来不是姿势奇怪,而是逆元需要用的时候是余数也需要的时候,这里的余数是不需要的,所以就AC了 就说一下碰到的问题 ...

  2. 求逆元(线性求逆元)及其扩展欧几里得

    线性求逆元模板: int inv[maxn]; void initInverse(){inv[1] = 1;for(int i = 2; i <= maxn; i++)inv[i] = (p - ...

  3. poj-青蛙的约会(扩展欧几里得)nyoj-小柯的约会

    由题意可列出方程 x + m * s - (y + n * s) = k * l; 化简得   (n-m)*s + k*l = x - y 化简得   (n-m)*s = x - y (mod l); ...

  4. [模板]欧几里得算法/扩展欧几里得

    最大公因数(欧几里得算法) $gcd(a,b)=gcd(b\%a,a)$(不一定需要a<b) $gcd(0,b)=b$ 1 inline int gcd(int a,int b){ 2 retu ...

  5. “景驰科技杯”2018年华南理工大学程序设计竞赛 H-对称与反对称(扩展欧几里得求逆元)

    题目链接 题目描述: 给出一个N*N的方阵A.构造方阵B,C: 使得A = B + C.其中 B为对称矩阵,C为反对称矩阵. 对于方阵S中的任意元素,若(S)ij = (S)ji,则称S为对称矩阵 对 ...

  6. Strange Optimization(扩展欧几里得)

    Strange Optimization Accepted : 67   Submit : 289 Time Limit : 1000 MS   Memory Limit : 65536 KB Str ...

  7. CodeForces - 724C Ray Tracing(扩展欧几里得解方程)

    题目链接:点击查看 题目大意:在 n∗mn*mn∗m 的矩阵中,从点 (0,0)(0,0)(0,0) 发射一个小球,以四十五度的方向出发,速度是 2\sqrt{2}2​,当碰到壁时,会进行反射:当碰到 ...

  8. 牛客多校3 - Fraction Construction Problem(扩展欧几里得)

    题目链接:点击查看 题目大意:给出 a 和 b ,求解满足条件的 c,d,e,f ,使得: d < b f < b c,e 均为小于等于 4e12 的正整数 题目分析:分情况讨论一下,首先 ...

  9. POJ - 1061 青蛙的约会(扩展欧几里得)

    题目链接:点击查看 题目大意:两只青蛙在一个单向循环数轴上跳动,给出初始位置和每秒跳动的距离以及数轴长度,问是否可以相遇,若能相遇求出最小时间 题目分析:自从第一次接触扩展欧几里得以来已经有半年时间了 ...

最新文章

  1. 怎么通过ip连接oracle,Oracle 无法通过IP连接问题
  2. 20169210《Linux内核原理与分析》第十二周作业
  3. 【Kubernetes系列】Kubernetes组件介绍
  4. 华为年底开源其操作系统 EulerOS,更名为 openEuler
  5. DRBD安装配置、工作原理及故障恢复
  6. 学python有前途吗-我们能用Python做什么?学Python有前途吗?
  7. oracle数据库导dump,oracle数据导入,导出dump文件
  8. MySQL几种常见的数据类型
  9. 最棒的 JavaScript 学习指南(2018版)
  10. 北航机试 16逆序数
  11. 95%的码农都在用的编程神器,值得一看!
  12. 关于初级java程序员面试题总结(每月更新中)
  13. 随笔分类 - PowerShell
  14. Python-Cartopy制图学习01-中国区域SPEI空间制图
  15. 科普:QLED和OLED到底有何区别?
  16. py2exe安装使用
  17. 3D游戏编程与设计作业六
  18. 2022年末最新最全Java学习路线,结合工作经验和培训机构整理
  19. Android中的Cursor
  20. 远程桌面用administrator登录的原因简介

热门文章

  1. AI预测世界杯冠军?附完整代码!
  2. 数字图像 - 直方图均衡化原理
  3. 电压比较器工作原理及应用
  4. php mysql 注入一句话木马_渗透技术--SQL注入写一句话木马原理
  5. 机顶盒开发中常用adb shell 命令
  6. 《软件工程》第一章——初始软件工程
  7. Mac系统清理工具实用性测评 哪款好用?
  8. 绿坝其实是死在了自己手里
  9. 和朋友合伙开早餐店一个月,铺面4000,一天营业四五百,还能坚持吗?
  10. adk linux 64 下载,Linux环境下的Android的ADK安装配置