Рубрики

Общее количество дней, потраченное на выполнение задания, если по истечении определенных дней один человек уходит

Учитывая, что человеку A требуется определенное количество времени, чтобы выполнить определенную часть работы, а человеку B требуется b дней, чтобы выполнить ту же работу. Если A и B начали работу вместе и за n дней до завершения работы, A покидает работу. Найдите общее количество дней, потраченных на выполнение работы.

Примеры:

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

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

Подход: пусть D будет общее количество дней для завершения работы. A и B работают вместе в течение D — n дней. Так,

(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)

Ниже приведена реализация вышеуказанного подхода:

C ++

// C ++ реализация подхода
#include <bits/stdc++.h>

using namespace std;

  
// Функция для возврата
// количество дней требуется

int numberOfDays(int a, int b, int n)

{

    int Days = b * (n + a) / (a + b);

  

    return Days;

}

  
// Код драйвера

int main()

{

    int a = 10, b = 20, n = 5;

  

    cout << numberOfDays(a, b, n);

  

    return 0;

}

Джава

// Java реализация подхода

import java.io.*;

  

class GFG 

{

      
// Функция для возврата
// количество дней требуется

static int numberOfDays(int a, int b, int n)

{

    int Days = b * (n + a) / (a + b);

  

    return Days;

}

  
// Код драйвера

public static void main (String[] args) 

{

  

    int a = 10, b = 20, n = 5;

    System.out.println (numberOfDays(a, b, n));

  
}
}

  
// Этот код предоставлен jit_t

python3

# Python реализация подхода

  
# Функция для возврата
количество дней требуется

def numberOfDays(a, b, n) :

  

    Days = b * (n + a) // (a + b)

  

    return Days

  
# Код драйвера

  

a = 10

b = 20

n = 5

  

print(numberOfDays(a, b, n))

  
# Этот код предоставлен ihritik

C #

// C # реализация подхода

using System;

  

class GFG 

      

    // Функция для возврата

    // количество дней требуется

    static int numberOfDays(int a, int b, int n) 

    

        int Days = b * (n + a) / (a + b); 

      

        return Days; 

    

      

    // Код драйвера

    public static void Main () 

    

      

        int a = 10, b = 20, n = 5; 

        Console.WriteLine(numberOfDays(a, b, n)); 

      

    

}

  
// Этот код предоставлен AnkitRai01

Выход:

10

Рекомендуемые посты:

Общее количество дней, потраченное на выполнение задания, если по истечении определенных дней один человек уходит

0.00 (0%) 0 votes