Programming Challenge
About: LogiNext
LogiNext is a cloud-based logistics and field service optimization company with core expertise in automated
delivery scheduling, route optimization, live tracking of resources, and delivery validation. Using advanced
machine learning algorithms, LogiNext enables its clients with omnichannel capabilities creating a seamless
delivery experience for all the customers. Using automated delivery automation and dispatch for increased
efficiency, route optimization to avoid local traffic hassles, live tracking of resources for operative
responsiveness, and delivery validation for complete transparency, LogiNext helps companies process same-day
and even two-hour deliveries.
LogiNext has more than 200 enterprise clients including many satisfied retail and e-commerce players in North
America, Middle-East, South and Southeast Asia. It has also been heralded by multiple platforms as being one
of the fastest growing SaaS companies in the world.
The true growth hackers, who paved the way for this success are the people working exceptionally hard and
adding value to our organisation. Our brand ambassadors - that's how we address our people, bring unique
values, discipline and problem-solving skills to nurture the innovative and entrepreneurial work culture at
LogiNext. Passion, versatility, expertise and a hunger for success is the Mantra chanted by every Logi-Nexter!
About the test
LogiNext has a comprehensive and selective interview process to find out the best of the best candidates for this
role. The focus of the tests would technical skills of the candidates, especially in Java/J2EE, MySQL, web services,
programming frameworks and basic data visualization.
The candidate is free to use Internet, websites and reference material for additional guidance but use of any
copyright information or code may lead to disqualification and prohibitive actions. At LogiNext, we have a zero
tolerance policy for plagiarism and other violations of our ethics policy. Ethics violations of any kind are taken
seriously and may result in dismissal from our program as well legal proceedings including claim to damages.
The best way you can keep yourself from committing an act of plagiarism is to be properly informed and be
natural in creation of your work..
Prerequisites:
1. Have access to Internet
2. Install Eclipse IDE (Or any other IDE of your choice)
3. Install Java JDK
4. Basic Knowledge Java Web Service
5. Install MySQL (or any database of your choice, this is non-mandatory)
Scoring Pattern:
● Basic Programming in Java/J2EE – 10 Points
● Business Logic – 20 Points
● Quality of Code – 10 points
● Database Structure, Connection and Related Tasks – 10 Points
Submission and Results:
At the end of the test, please submit your Java project files and folder with SQL scripts in zipped file format at
careers@[Link].
Problem Statement:
Imagine that you have been given the task of managing the food delivery network of a restaurant RoofTop in
New York. You need to help them deliver the orders to their customers by assigning the delivery boys to each
order.
Assume that the city consists of N customers who want to order their lunch today from RoofTop. You have a
total of M drivers and need to cater to the customers ordering food. Each customer has two parameters
associated with them, O and T, denoting the time at which a customer orders a meal and the travel time from
RoofTop restaurant to the destination of this particular customer. Each delivery boy can only deliver one order
at a time and as soon as the delivery boy gets free, he must start delivering other orders.
The lowest index delivery boy must be allocated first for the delivery, The status of the delivery boy while
delivering the order should be "Busy". If all the delivery boys are busy at the time of order placement then
show the message "No Food :-(".
Annotations:
N - Number of Customer Orders (The customers are enumerated from C1, C2 to CN)
M - Number of Delivery Boys (The drivers are enumerated from D1, D2 to DM)
O - Order Placement Time
T - Travel Time from Restaurant to Customer
Input:
Total Number of Customer Orders (N) - 6
Total Number of Drivers (M) - 2
If 1st Customer's order placement time is 1 and it takes 10 minutes to travel from restaurant to customer then
(O, T) -> (1, 10)
2nd Customer Order placement time and Travel time (O, T) - 4, 20
3rd Customer Order placement time and Travel time (O, T) - 15, 5
4th Customer Order placement time and Travel time (O, T) - 22, 20
5th Customer Order placement time and Travel time (O, T) - 24, 10
6th Customer Order placement time and Travel time (O, T) - 25, 10
Example Input Line:
6,2 → (N,M)
1,10
4,20
15,5
22,20
24,10
25,10
Output:
C1 - D1
C2 - D2
C3 - D1
C4 - D1
C5 - D2
C6 - No Food :-(
Terms and Conditions
NOT AN OFFER OR CONTRACT OF EMPLOYMENT
Under no circumstances shall the submission of an entry into the test or anything in these Terms be construed
as an offer or contract of employment with LogiNext. You acknowledge that you have submitted your entry
voluntarily and not in confidence or in trust. You acknowledge that no confidential, fiduciary, agency or other
relationship or implied-in-fact contract now exists between you and LogiNext and that no such relationship is
established by your submission of an entry under these Terms.
NO RECOURSE TO JUDICIAL OR OTHER PROCEDURES
To the extent permitted by law, the rights to litigate, to seek injunctive relief or to make any other recourse to
judicial or any other procedure in case of disputes or claims resulting from or in connection with this test are
hereby excluded, and any contestant expressly waives any and all such rights. If such exclusion or waiver is not
permitted by law, the contestant agrees to submit to the exclusive jurisdiction of the courts located within the
city of Mumbai, Maharashtra to resolve any legal matter arising from the dispute or claims. Candidates further
agree that LogiNext will not be liable for any errors, ambiguities or other inaccuracies caused by LogiNext in the
design, execution, judging or other aspects of the test.
ELIMINATION
A candidate may be prohibited from participating in this test if, in LogiNext’s sole discretion, LogiNext reasonably
believes that the candidate has attempted to undermine the legitimate operation of the test by:
1. Providing false information concerning his/her identity, postal address, mail address or telephone
number;
2. Breaching any of the provisions set forth in these Terms;
3. Threatening, harassing or interfering with the ability of other candidates to effectively participate in
the test;
4. Threatening, harassing or interfering with LogiNext administrators or other employees;
5. Communicating or publishing information concerning the content of the problems, or solutions to the
problems, with other candidates or non-candidates, either directly or directly, before or after the end
of the Round, other than as permitted.
6. Refusing to comply with these Terms.