首页 > 其他分享 >P1516 青蛙的约会

P1516 青蛙的约会

时间:2024-05-10 19:13:04浏览次数:13  
标签:ll int P1516 青蛙 long yy xx include 约会

问题可以转化成一个同余方程ax+by=c(a>0)(如果a是负的,要将a和c都变号)
关于这个方程的求解,可以用拓展欧几里得算法解决

#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<unordered_map>
#include<string>
#include<vector>
#include<stack>
#include<queue>
#include<map>
#include<cmath>
#include<set>
using namespace std;
//#define int long long
typedef long long ll;
const int N=1e6+10;
const int mod=1e9+7;
ll xx,yy,m,n,l;
int gcd(int a,int b)
{
    if(b==0)
    {
        return a;

    }
    return gcd(b,a%b);
}
void Exgcd(ll a, ll b, ll &x, ll &y) {
if (!b) x = 1, y = 0;
else Exgcd(b, a % b, y, x), y -= a / b * x;
} 
signed main()
{
    ll x,y;
    cin>>xx>>yy>>m>>n>>l;
    int a=n-m;
    int b=l;
    int c=xx-yy;
    if(a<0)
    {
        a=-a;
        c=-c;
    }
    Exgcd(a,b,x,y);
    int g=gcd(a,l);
    if(c%g!=0)
    {
        cout<<"Impossible";
    }
    else{
        cout<<(c/g*x%(b/g)+b/g)%(b/g)<<endl;
    }


    return 0;
}

标签:ll,int,P1516,青蛙,long,yy,xx,include,约会
From: https://www.cnblogs.com/yuhaomice/p/18185125

相关文章

  • 《青蛙行》——国宝只爱叫小番
    青蛙行国宝只爱叫小番 汉口江畔车马喧,寒风凛冽雪满天。应是天仙狂醉时,揉乱白云撒人间。天仙亦如常日醉,学子不比往时闲。遥望雪泥常聚处,塞拉飞舞居于前。风雨可驱行人意,寒气难入学子心。跳珠黑云压江城,唯见瓜房火通明。莘莘学子侃侃谈,青青子衿遍遍倾。未料多年放言语,有......
  • 概率dp四题(青蛙跳、吸血鬼、rating、k小姐的点赞之谜)
    青蛙跳Description有\(n\)个荷叶按顺序依次排列开,编号为\(1\)到\(n\),现在有只青蛙在编号为\(n\)的荷叶上。它现在自由愉快的跳跃,如果他在编号为\(i\)的荷叶上,它会等概率的跳到编号为\([1,i]\)的荷叶上,求它跳到编号为\(1\)的荷叶上的期望步数。Samples53.083333......
  • 1014 福尔摩斯的约会
    我感觉是这题出的有问题,第二个只说了字母,并没有说第二个大写字母...为啥就得从第一个大写字母后面开始检索呢。#include<bits/stdc++.h>usingnamespacestd;map<int,string>mp={{1,"MON"},{2,"TUE"},{3,"WED"},{4,"THU"},{5,"FRI"},{6,"SAT"}......
  • 蓝桥杯,省赛,动态规划专题,青蛙,更小的数,松散子序列,接龙数列
    #include<bits/stdc++.h>usingnamespacestd;constintN=1e5+9;doublex[N],a[N],b[N];doubledp[N][5];intmain(){intn;cin>>n;for(inti=1;i<=n;i++)cin>>x[i];for(inti=1;i<=n-1;i++)cin>>a[i]>>b[i......
  • P4556 [Vani有约会] 雨天的尾巴 /【模板】线段树合并
    P4556[Vani有约会]雨天的尾巴/【模板】线段树合并在这题里面讲一下线段树合并。顾名思义就是把多个线段树合并成一个。显然完全二叉线段树(也就是普通线段树)是无法更高效的合并的,只能把所有节点加起来建个新树。但是在动态开点线段树中,有时候一个树只有几条链,这时候我们就是可......
  • 青蛙过河(前缀+二分)
    1importjava.util.*;23publicclassMain{4publicstaticvoidmain(String[]args){5Scannerscanner=newScanner(System.in);6intn=scanner.nextInt();7longx=scanner.nextLong();8//前缀和9lo......
  • 函数递归经典题目——汉诺塔,青蛙跳台阶
    函数递归(recursion)函数递归(recursion)程序调用自身的编程技巧。只需要少量程序就可以描述除解题过程所需要的多次重复运算,大大减少了代码量递归---把大事化小必要条件*2 1存在限制条件,当满足这个限制条件时,递归便不再继续 2每次递归调用之后越来越接近这个限制条件递归......
  • 2024-01-06:用go语言,在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧 在
    2024-01-06:用go语言,在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧在桥上有一些石子,青蛙很讨厌踩在这些石子上由于桥的长度和青蛙一次跳过的距离都是正整数我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0...L其中L是桥的长度,坐标为0的点表示桥的起点,坐......
  • python递归求解青蛙跳台阶问题
    一只青蛙一次可以跳上1级台阶,也可以跳上2级。请问该青蛙跳上一个n级的台阶总共有多少种跳法。输入台阶数,输出一共有多少种跳法。defjump1(n):ifn==1:return1elifn==2:return2else:returnjump1(n-1)+jump1(n-2)x=eval(input())pr......
  • NEFU OJ Problem 1489 青蛙赶路 题解【动态规划DP】
    Problem:GTimeLimit:2000msMemoryLimit:65535KDescription有一只青蛙,每秒选择走1米或跳m米,青蛙体力不足,所以不能连续两秒都在跳。青蛙将移动到[l,r]之间,它想知道有多少种不同的方式来实现其目标。两种方式是不同的,当且仅当它们移动不同的米或花费不同的秒,或者是在一秒......