Related Articles
Total money to be paid after traveling the given number of hours
• Last Updated : 30 Dec, 2018

Given the travel cost of a cab is m rupees for first n hours per hour and then is x rupees per hour, given the total time of travel in minute the task is to find the total cost.

Note:If an hour starts then the traveller has to give the full cost for that hour.

Examples:

```Input:  m = 50, n = 5, x = 67, mins 2927
Output: 3198
m = 50, n = 5, x = 67, Minutes travelled = 2927
Thus hours travelled = 49
Thus cost = 5 * 50 + (49-5) * 67 = 2927

Input: m = 50, n = 40, x = 3, mins = 35
Output: 50
```

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: First calculate the hours travelled by taking the ceiling of (minutes travelled)/60 as if we start an hour we have to pay the price of a full hour. Then we see that our hours calculated is less than equal to n or not if it is then we directly give the answer as m*hours travelled else answer is n * m + (hours_calculated – n) * x.

Below is the implementation of the above approach:

## C++

 `// CPP implementation of the above approach``#include ``using` `namespace` `std;`` ` `int` `main(){`` ` `    ``float` `m=50, n=5, x=67, h=2927;`` ` `    ``// calculating hours travelled``    ``int` `z = (``ceil``(h / 60*1.0));``    ``if``(z <= n)``        ``cout<

## Java

 `// Java implementation of the above approach`` ` `import` `java.io.*;`` ` `class` `GFG {``     ` ` ` `    ``public` `static` `void` `main (String[] args) {``            ``float` `m=``50``, n=``5``, x=``67``, h=``2927``;`` ` `    ``// calculating hours travelled``    ``int` `z = (``int``)(Math.ceil(h / ``60``*``1.0``));``    ``if``(z <= n)``        ``System.out.println(z * m);``    ``else``        ``System.out.println(n * m+(z-n)*x);``    ``}``}`` ` `// This code is contributed by shs`

## Python3

 `# Python3 implementation of the above approach`` ` `import` `math as ma``m, n, x, h ``=` `50``, ``5``, ``67``, ``2927`` ` `# calculating hours travelled``z ``=` `int``(ma.ceil(h ``/` `60``)) ``if``(z <``=` `n):``    ``print``(z ``*` `m)``else``:``    ``print``(n ``*` `m``+``(z``-``n)``*``x)`

## C#

 `// C# implementation of the above approach`` ` `using` `System;`` ` `class` `GFG {``     ` ` ` `    ``public` `static` `void` `Main () {``            ``float` `m=50, n=5, x=67, h=2927;`` ` `    ``// calculating hours travelled``    ``int` `z = (``int``)(Math.Ceiling((h / 60*1.0)));``    ``if``(z <= n)``      ``Console.WriteLine(z * m);``    ``else``        ``Console.WriteLine(n * m+(z-n)*x);``    ``}``}`` ` `// This code is contributed by anuj_67..`

## PHP

 ``
Output:
```3198
```

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