Apple Pickup Problem Statement

Alice has a garden represented as a ‘N’ * ‘N’ grid called ‘MATRIX’. She wants to collect apples following these rules:

  • 1 -> Alice can pick an apple from this cell and pass through.
  • -1 -> This cell contains a bush that Alice cannot visit.
  • 0 -> This cell is empty, and Alice can pass through.

Alice starts from the top-left corner (0,0) and must reach the bottom-right corner (‘N’-1,’N’-1) and return back to (0,0). Her goal is to collect the maximum number of apples during this round trip.

She can move:

  • Right or Down towards the bottom-right corner.
  • Left or Up towards the top-left corner.

If there's no valid path from (0,0) to (‘N’-1, ‘N’-1), Alice collects no apples.

Example:

Input:
matrix = [
[1, 1, -1, 1],
[1, 0, 1, 1],
[1, 1, 0, 1],
[0, -1, -1, 1]
]
Output:
9
Explanation:

A possible path:

Towards bottom-right: (0,0) -> (0,1) -> (1,1) -> (1,2) -> (1,3) -> (2,3) -> (3,3) collecting 6 apples.

Returning to top-left: (3,3) -> (2,3) -> (2,2) -> (2,1) -> (2,0) -> (1,0) -> (0,0) collecting 3 apples.

Total apples collected = 9.

Input Format:

The first line contains an integer ‘T’ representing the number of test cases.
Each test case begins with an integer ‘N’, the size of the grid.
Each of the following ‘N’ lines contains ‘N’ space-separated integers representing the grid.

Output Format:

Print a single integer per test case representing the maximum number of apples Alice can collect.

Constraints:

  • 1 ≤ T ≤ 10
  • 1 ≤ N ≤ 50
  • -1 ≤ MATRIX[i][j] ≤ 1
  • Time limit: 1 second

Note:

You don’t have to print anything; just implement and return the answer.
AnswerBot
4mo

The problem involves finding the maximum number of apples Alice can collect in a grid while following specific rules.

  • Create a recursive function to explore all possible paths from the starting point t...read more

Help your peers!
Select
Add answer anonymously...

Cisco Software Developer interview questions & answers

A Software Developer was asked 1w agoQ. What is Java?
A Software Developer was asked 8mo agoQ. Write a program to convert a 24-hour time input into AM/PM format.
A Software Developer was asked 10mo agoQ. You are given two non-empty linked lists representing two non-negative integers....read more

Popular interview questions of Software Developer

A Software Developer was asked 8mo agoQ1. Write a program to convert a 24-hour time input into AM/PM format.
A Software Developer was asked 11mo agoQ2. You are given two non-empty linked lists representing two non-negative integers....read more
A Software Developer was asked 12mo agoQ3. What are OOPS concepts? Explain.
Cisco Software Developer Interview Questions
Stay ahead in your career. Get AmbitionBox app
play-icon
play-icon
qr-code
Trusted by over 1.5 Crore job seekers to find their right fit company
80 L+

Reviews

10L+

Interviews

4 Cr+

Salaries

1.5 Cr+

Users

Contribute to help millions

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2025 Info Edge (India) Ltd.

Follow Us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter
Profile Image
Hello, Guest
AmbitionBox Employee Choice Awards 2025
Winners announced!
awards-icon
Contribute to help millions!
Write a review
Write a review
Share interview
Share interview
Contribute salary
Contribute salary
Add office photos
Add office photos
Add office benefits
Add office benefits