P1516 青蛙的约会
2021/5/15 10:25:24
本文主要是介绍P1516 青蛙的约会,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目
题目
思路
显然
x
+
k
m
+
q
L
=
y
+
k
n
x+km+qL=y+kn
x+km+qL=y+kn
=
>
k
(
n
−
m
)
+
q
L
=
y
−
x
=>k(n-m)+qL=y-x
=>k(n−m)+qL=y−x
然后exgcd即可(要判无解)
code:
#include<iostream> #include<cstdio> #include<algorithm> #include<string> #include<cstring> #include<cmath> using namespace std; long long n,m,x,y,l,ans; long long gcd(long long x,long long y) { int r; while (y!=0) { r=x%y; x=y,y=r; } return x; } long long xx,yy; long long exgcd(long long x,long long y,long long &xx,long long &yy) { if (!y) { xx=1,yy=0; return x; } ans=exgcd(y,x%y,xx,yy); long long t=xx; xx=yy; yy=t-x/y*yy; return ans; } int main() { cin>>x>>y>>m>>n>>l; n=n-m,x=x-y; if (n<0) { n=-n,x=-x; } exgcd(n,l,xx,yy); if (x%ans!=0) cout<<"Impossible"; else cout<<((xx*(x/ans))%(l/ans)+(l/ans))%(l/ans); return 0; }
这篇关于P1516 青蛙的约会的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-25初学者必备:订单系统资料详解与实操教程
- 2024-12-24内网穿透资料入门教程
- 2024-12-24微服务资料入门指南
- 2024-12-24微信支付系统资料入门教程
- 2024-12-24微信支付资料详解:新手入门指南
- 2024-12-24Hbase资料:新手入门教程
- 2024-12-24Java部署资料
- 2024-12-24Java订单系统资料:新手入门教程
- 2024-12-24Java分布式资料入门教程
- 2024-12-24Java监控系统资料详解与入门教程