计蒜客 机器人的相遇问题(扩展欧几里得模板题)
2017-08-29 19:06
246 查看
题目链接:https://www.jisuanke.com/course/615/28212
题目大意:求解走多少步后,两个人再次相遇。
题目思路:将式子总结成ax+by=gcd(a,b)的形式,从而可用扩展欧几里得进行相应的求解。无解的情况是c/gcd(a,b)不为0
代码:
题目大意:求解走多少步后,两个人再次相遇。
题目思路:将式子总结成ax+by=gcd(a,b)的形式,从而可用扩展欧几里得进行相应的求解。无解的情况是c/gcd(a,b)不为0
代码:
#include <bits/stdc++.h> using namespace std; #define ll long long ll exgcd(ll a,ll b,ll &x,ll &y) { if(b==0){ x=1; y=0; return a; } ll ans=exgcd(b,a%b,x,y); ll temp=x; x=y; y=temp-a/b*y; return ans; } int main() { ll x,y,m,n,l; cin>>x>>y>>m>>n>>l; ll a=(m-n+l)%l; ll b=(y-x+l)%l; ll c=__gcd(a,l); if(b%c!=0){ cout<<"Impossible"<<endl; } else{ a=a/c;b=b/c; l/=c; exgcd(a,l,x,y); x=(x+l)%l; x*=b; x%=l; cout<<x<<endl; } }
相关文章推荐
- 双六问题(扩展欧几里得模板)
- 扩展欧几里得各类问题模板
- 计蒜课-机器人的相遇问题 拓展欧几里得
- 扩展欧几里得模板
- 扩展欧几里得、求乘法逆元及其应用、中国剩余定理(互质版和非互质版)、欧拉函数、快速判素数模板
- 扩展欧几里得 模板
- 扩展欧几里得模板(洛谷1082 同余方程NOIP 2012 提高组 第二天 第一题)
- 扩展欧几里得模板
- 模板:欧几里得 扩展欧几里得 乘法逆元
- 扩展欧几里得模板
- HDOJ-----1573---X问题(扩展欧几里得)
- 扩展欧几里得模板&逆元求法
- 欧几里得+扩展欧几里得(转载、模板)
- poj 1061 青蛙的约会 (扩展欧几里得模板)
- CodeForces - 7C Line(扩展欧几里得模板)
- 【面试总结】机器人相遇问题
- 求乘法逆元模板(扩展欧几里得)
- 扩展欧几里得模板
- hdu 2669 Romantic 扩展欧几里得求线性方程模板题
- 【拓展欧几里得】机器人的相遇