Question Name:JIM AND THE ORDERS

#include <bits/stdc++.h>

using namespace std;

int N;
pair<int, int> A[1000];

int main()
{
    scanf("%d", &N);
    int a, b;
    for(int i=0; i<N; i++)
    {
        scanf("%d%d", &a, &b);
        A[i]=make_pair(a+b, i+1);
    }
    sort(A, A+N);
    for(int i=0; i<N; i++)
        printf("%d ", A[i].second);
    printf("\n");
    return 0;
}

  • Problem Description
    Jim’s Burgers has n hungry burger fans waiting in line. Each unique order, i,is placed by a customer at time ti, and the order takes di units of time to process.

    Given the information for all n orders, can you find and print the order in which all n customers will receive their burgers? If two or more orders are fulfilled at the exact same time t, sort them by ascending order number.

    Input Format

    The first line contains a single integer, n, denoting the number of orders.
    Each of the n subsequent lines contains two space-separated integers describing the respective values of ti and di for order i.

    Constraints
    1 <= n<= 10^3
    1 <= i<= n
    1 <= ti, di <=10^6
    Output Format

    Print a single line of n space-separated order numbers (recall that orders are numbered from 1 to n ) describing the sequence in which the customers receive their burgers. If two or more customers receive their burgers at the same time, print the smallest order number first.
  • Test Case 1
    Input (stdin)3
    1 3
    2 3
    3 3
    Expected Output1 2 3
  • Test Case 2
    Input (stdin)5
    8 1
    4 2
    5 6
    3 1
    4 3
    Expected Output4 2 5 1 3
Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

Powered By
100% Free SEO Tools - Tool Kits PRO