Restaurant Customers

You are given the arrival and leaving times of n customers in a restaurant.

What was the maximum number of customers?

Example:

Input:  n = 3, arr = {{5, 8}, {2, 4}, {3, 9}}
Output: 2

Approach

Java

import java.util.HashMap;

public class RestaurantCustomers {
    public static void main(String[] args) {

        int n = 3;
        int[][] arr = { { 58 }, { 24 }, { 39 } };
        restaurantCustomers(n, arr);

    }

    static void restaurantCustomers(int nint[][] arr) {

        HashMap<IntegerIntegermp = new HashMap<Integer
Integer>();

        for (int i = 0; i < n; i++) {
            int l = arr[i][0], r = arr[i][1];

            mp.put(l, mp.getOrDefault(l, 0) + 1);

            mp.put(r + 1mp.getOrDefault(r + 10) - 1);

        }
        int ans = 0, cur = 0;

        for (HashMap.Entry<IntegerIntegerset :
 mp.entrySet()) {

            cur += set.getValue();
            ans = Math.max(ans, cur);

        }

        System.out.println(ans);
    }

}

C++

#include <bits/stdc++.h>
using namespace std;

void restaurantCustomers(int nvector<vector<int>> &arr)
{

    map<intintmp;
    for (int i = 0i < ni++)
    {
        int l = arr[i][0]r = arr[i][1];

        mp[l]++;
        mp[r + 1]--;
    }
    int ans = 0cur = 0;
    for (auto it = mp.begin(); it != mp.end(); it++)
    {
        cur += it->second;
        ans = max(anscur);
    }
    cout << ans << "\n";
}

int main()
{
    int n = 3;
    vector<vector<int>> arr = {{58}, {24}, {39}};
    restaurantCustomers(narr);

    return 0;
}


No comments:

Post a Comment