Related Articles

Related Articles

Total number of days taken to complete the task if after certain days one person leaves
  • Last Updated : 13 Jun, 2019

Given that person A takes a days to do a certain piece of work while person B takes b days to do the same work. If A and B started the work together and n days before the completion of work, A leaves the work. Find the total number of days taken to complete work.

Examples:

Input: a = 10, b = 20, n = 5
Output: 10

Input: a = 5, b = 15, n = 3
Output: 6

Approach: Let D be the total number of days to complete the work. A and B work together for D – n days. So,



(D – n) * (1/a + 1/b) + (n) * (1/b) = 1
D * (1/a + 1/b) – (n/a) – (n/b) + (n/b) = 1
D * (1/a + 1/b) = (n + a) / a
D = b * (n + a) / (a + b)

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ implementation of the approach
#include <bits/stdc++.h>
using namespace std;
  
// Function to return the
// number of days required
int numberOfDays(int a, int b, int n)
{
    int Days = b * (n + a) / (a + b);
  
    return Days;
}
  
// Driver code
int main()
{
    int a = 10, b = 20, n = 5;
  
    cout << numberOfDays(a, b, n);
  
    return 0;
}

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java implementation of the approach
import java.io.*;
  
class GFG 
{
      
// Function to return the
// number of days required
static int numberOfDays(int a, int b, int n)
{
    int Days = b * (n + a) / (a + b);
  
    return Days;
}
  
// Driver code
public static void main (String[] args) 
{
  
    int a = 10, b = 20, n = 5;
    System.out.println (numberOfDays(a, b, n));
  
}
}
  
// This code is contributed by jit_t

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python implementation of the approach
  
# Function to return the
# number of days required
def numberOfDays(a, b, n) :
  
    Days = b * (n + a) // (a + b)
  
    return Days
  
# Driver code
  
a = 10
b = 20
n = 5
  
print(numberOfDays(a, b, n))
  
# This code is contributed by ihritik    

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# implementation of the approach 
using System;
  
class GFG 
      
    // Function to return the 
    // number of days required 
    static int numberOfDays(int a, int b, int n) 
    
        int Days = b * (n + a) / (a + b); 
      
        return Days; 
    
      
    // Driver code 
    public static void Main () 
    
      
        int a = 10, b = 20, n = 5; 
        Console.WriteLine(numberOfDays(a, b, n)); 
      
    
}
  
// This code is contributed by AnkitRai01

chevron_right


Output:

10

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.




My Personal Notes arrow_drop_up
Recommended Articles
Page :