Skip to content
Related Articles

Related Articles

Improve Article
Time until distance gets equal to X between two objects moving in opposite direction
  • Last Updated : 30 Apr, 2021

Consider two people moving in opposite direction with speeds U meters/second and V meters/second respectively. The task is to find how long will take to make the distance between them X meters.
Examples: 
 

Input: U = 3, V = 3, X = 3 
Output: 0.5 
After 0.5 seconds, policeman A will be at distance 1.5 meters 
and policeman B will be at distance 1.5 meters in the opposite direction 
The distance between the two policemen is 1.5 + 1.5 = 3
Input: U = 5, V = 2, X = 4 
Output: 0.571429 
 

 

Approach: It can be solved using distance = speed * time. Here, distance would be equal to the given range i.e. distance = X and speed would be the sum of the two speeds because they are moving in the opposite direction i.e. speed = U + V.
Below is the implementation of the above approach:
 

C++




// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
 
// Function to return the time for which
// the two policemen can communicate
double getTime(int u, int v, int x)
{
    double speed = u + v;
 
    // time = distance / speed
    double time = x / speed;
    return time;
}
 
// Driver code
int main()
{
    double u = 3, v = 3, x = 3;
    cout << getTime(u, v, x);
 
    return 0;
}

Java




// Java implementation of the approach
class GFG
{
 
    // Function to return the time for which
    // the two policemen can communicate
    static double getTime(int u, int v, int x)
    {
        double speed = u + v;
 
        // time = distance / speed
        double time = x / speed;
        return time;
    }
 
    // Driver code
    public static void main(String[] args)
    {
        int u = 3, v = 3, x = 3;
        System.out.println(getTime(u, v, x));
    }
}
 
/* This code contributed by PrinciRaj1992 */

Python3




# Python3 implementation of the approach
 
# Function to return the time
# for which the two policemen
# can communicate
def getTime(u, v, x):
 
    speed = u + v
 
    # time = distance / speed
    time = x / speed
    return time
 
# Driver code
if __name__ == "__main__":
 
    u, v, x = 3, 3, 3
    print(getTime(u, v, x))
 
# This code is contributed
# by Rituraj Jain

C#




// C# implementation of the approach
using System;
 
class GFG
{
 
    // Function to return the time for which
    // the two policemen can communicate
    static double getTime(int u, int v, int x)
    {
        double speed = u + v;
 
        // time = distance / speed
        double time = x / speed;
        return time;
    }
 
    // Driver code
    public static void Main()
    {
        int u = 3, v = 3, x = 3;
        Console.WriteLine(getTime(u, v, x));
    }
}
 
// This code is contributed
// by Akanksha Rai

PHP




<?php
// PHP implementation of the approach
 
// Function to return the time for which
// the two policemen can communicate
function getTime($u, $v, $x)
{
    $speed = $u + $v;
 
    // time = distance / speed
    $time = $x / $speed;
    return $time;
}
 
// Driver code
$u = 3; $v = 3; $x = 3;
echo getTime($u, $v, $x);
 
// This code is contributed
// by Akanksha Rai
?>

Javascript




<script>
// JavaScript implementation of the approach
 
// Function to return the time for which
// the two policemen can communicate
function getTime(u, v, x)
{
    let speed = u + v;
 
    // time = distance / speed
    let time = x / speed;
    return time;
}
 
// Driver code
    let u = 3, v = 3, x = 3;
    document.write(getTime(u, v, x));
 
// This code is contributed by Surbhi Tyagi.
</script>
Output: 
0.5

 

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.




My Personal Notes arrow_drop_up
Recommended Articles
Page :