📌  相关文章
📜  检查是否可以通过给定的跳跃从 (a, 0) 移动到 (b, 0)

📅  最后修改于: 2021-10-23 08:43:38             🧑  作者: Mango

给定两个点,即 (a, 0) 到 (b, 0)。任务是检查是否可以从 (a,0) 移动到 (b,0)。一个人可以移动为 (a, 0), (a+x, 0), (a+x+1, 0), (a, 2*x, 0), (a, 2*x+1, 0)… …

例子:

Input: a = 3, x = 10, b = 4
Output: No

Input: a = 3, x = 2, b = 5
Output: Yes

方法:一个答案是可能的,如果

下面是上述方法的实现:

C++
// CPP program to move form
// (a, 0) to (b, 0) with given jumps
#include 
using namespace std;
 
// Function to check if it is possible
bool Move(int a, int x, int b)
{
    if ((((b - a) % x == 0) || ((b - a - 1) % x == 0) && a + 1 != b) && b >= a)
        return true;
 
    return false;
}
 
// Driver code
int main()
{
    int a = 3, x = 2, b = 7;
 
    // function call
    if (Move(a, x, b))
        cout << "Yes";
    else
        cout << "No";
}


Java
// Java program to move form
// (a, 0) to (b, 0) with given jumps
import java.io.*;
 
class GFG {
 
// Function to check if it is possible
static boolean Move(int a, int x, int b)
{
    if ((((b - a) % x == 0) || ((b - a - 1) % x == 0) && a + 1 != b) && b >= a)
        return true;
 
    return false;
}
 
// Driver code
    public static void main (String[] args) {
            int a = 3, x = 2, b = 7;
 
    // function call
    if (Move(a, x, b))
        System.out.println( "Yes");
    else
        System.out.println( "No");
    }
}
//This code is contributed by shs..


Python 3
# Python 3 program to move form
# (a, 0) to (b, 0) with given jumps
 
# Function to check if it
# is possible
def Move(a, x, b):
 
    if ((((b - a) % x == 0) or
         ((b - a - 1) % x == 0) and
           a + 1 != b) and b >= a):
        return True
 
    return False
 
# Driver code
if __name__ == "__main__":
    a = 3
    x = 2
    b = 7
 
    # function call
    if (Move(a, x, b)):
        print("Yes")
    else:
        print("No")
 
# This code is contributed
# by ChitraNayal


C#
// C# program to move form
// (a, 0) to (b, 0) with given jumps
using System;
 
class GFG
{
 
// Function to check if it is possible
static bool Move(int a, int x, int b)
{
    if ((((b - a) % x == 0) ||
         ((b - a - 1) % x == 0) &&
           a + 1 != b) && b >= a)
        return true;
 
    return false;
}
 
// Driver code
public static void Main ()
{
    int a = 3, x = 2, b = 7;
 
    // function call
    if (Move(a, x, b))
        Console.WriteLine( "Yes");
    else
        Console.WriteLine( "No");
}
}
 
// This code is contributed
// by inder_verma


PHP
= $a)
        return true;
 
    return false;
}
 
// Driver code
$a = 3; $x = 2; $b = 7;
 
// function call
if (Move($a, $x, $b))
    echo "Yes";
else
    echo"No";
     
// This code is contributed
// by anuj_67
?>


Javascript


输出:
Yes