C Looooops (扩展欧几里得) HQG

编程入门 行业动态 更新时间:2024-10-10 01:18:39

C Looooops (扩展<a href=https://www.elefans.com/category/jswz/34/1715516.html style=欧几里得) HQG"/>

C Looooops (扩展欧几里得) HQG

又是个裸的。

直接 exgcd(c,1<<k,x,y), e x g c d ( c , 1 << k , x , y ) , 判断负数即可。

水。。。

#include <bits/stdc++.h>
using namespace std ;
typedef long long ll ;
ll a,b,c,d,k,A,B,C,D,e,x,y ;ll exgcd(ll a,ll b,ll &D,ll &x,ll &y){if (b==0){x=1;y=0 ;D=a;}else {exgcd(b,a%b,D,y,x) ;y-=(a/b)*x ;} 
}
int main(){while(scanf("%lld%lld%lld%lld",&a,&b,&c,&k) && (a|b|c|k)){C=b-a ;if (C==0){printf("0\n") ;continue ;}A=c ;B=(ll)1<<k ;exgcd(A,B,D,x,y) ;if (C%D){printf("FOREVER\n") ;continue ;}e=B/D;x=(((x*C/D)%e)+e)%e;printf("%lld\n",x);} 
} 

更多推荐

C Looooops (扩展欧几里得) HQG

本文发布于:2024-03-23 23:02:32,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1743882.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:欧几里得   Looooops   HQG

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!