#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
using namespace std;
#define ll long long
ll ext_gcd(ll a,ll b,ll &x,ll &y)
{
if(b==0)
{
x=1;
y=0;
return a;
}
ll d=ext_gcd(b,a%b,y,x);
y-=a/b*x;
return d;
}
ll ax_b_mod_n(ll a, ll b, ll n)
{
ll x,y,d,t;
d=ext_gcd(a,b,x,y);
if(n%d==0)
{
x=n/d*x;
t=b/d;
if(t<0) t=-t;
x=(x%t+t)%t;
return x;
}
return -1;
}
int main()
{
ll x,y,a,b,n,a1,b1,n1,c,k;
ll d[50]; d[0]=1;
for(int i=1;i<=49;i++) d[i]=d[i-1]*2;
while(scanf("%I64d%I64d%I64d%I64d",&a,&b,&c,&k)==4)
{
if(!(a || b || c || k)) break;
if(c==0)
{
if(a==b) printf("0\n");
else printf("FOREVER\n");
continue;
}
a1=c; b1=d[k]; n1=b-a;
ll ans=ax_b_mod_n(a1,b1,n1);
if(ans==-1) printf("FOREVER\n");
else printf("%I64d\n",ans);
}
return 0;
}
extend_gcd.zip_欧几里德联合
版权申诉
58 浏览量
2022-09-24
04:49:47
上传
评论
收藏 2KB ZIP 举报
寒泊
- 粉丝: 74
- 资源: 1万+
最新资源
- 三菱PLC(Mitsubishi)通讯协议的C#实现,支持FX、Q系列的ASCII-3E、BIN-3E、FX串口格式
- 五一建模20242024
- rainy-day.jpg
- IMG_20240501_171218.jpg
- Swift-内购封装swift版本
- 经典CNN网络之ResNet 图像分类网络实战项目:7种小麦叶片病害分类(迁移学习)
- Java毕设之ssm010基于ssm的新能源汽车在线租赁管理系统+vue.rar
- Java毕设之ssm009毕业生就业信息统计系统+vue.rar
- Java毕设之ssm008医院门诊挂号系统+jsp.rar
- Java毕设之ssm007亚盛汽车配件销售业绩管理统+jsp.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈