poj1061

小鱼儿 2022-06-18 04:19 253阅读 0赞
  1. #include<stdio.h>
  2. #include<math.h>
  3. #include<iostream>
  4. using namespace std;
  5. typedef __int64 lld;
  6. void gcd(lld a,lld b,lld &d,lld &x,lld &y)
  7. {
  8. if(!b) {
  9. d=a;x=1;y=0;}
  10. else {
  11. gcd(b,a%b,d,y,x);y-=x*(a/b);}
  12. }
  13. int main()
  14. {
  15. lld x,y,m,n,l;
  16. lld a,b,c,d,g,s;
  17. scanf("%I64d%I64d%I64d%I64d%I64d",&x,&y,&m,&n,&l);
  18. a=l,b=n-m,c=x-y;
  19. gcd(a,b,d,x,y);
  20. if(c%d!=0)
  21. cout<<"Impossible"<<endl;
  22. else
  23. {
  24. s=a/d;
  25. y=y*(c/d);
  26. y=(y%s+s)%s;
  27. printf("%I64d\n",y);
  28. }
  29. return 0;
  30. }

发表评论

表情:
评论列表 (有 0 条评论,253人围观)

还没有评论,来说两句吧...

相关阅读

    相关 青蛙的约会 POJ1061

    这道题真心坑了我好久,先是扩展欧几里得不清楚,再是写好后交了好多次都是WA,纠结了好久。然后用大数据测了,最后尽然有负数,我惊呆了,怎么找也找不出原因。 最后在网上看了别人的

    相关 PAT乙级1061

    1061 判断题 (15 分) 判断题的评判很简单,本题就要求你写个简单的程序帮助老师判题并统计学生们判断题的得分。 输入格式: 输入在第一行给出两个不超过 100