Skip to content
    SeaCode
    Learning tracksCode ArenaWorkshops & EventsInstructors
    Log inSign up
    Practice problems / Rotting oranges

    Rotting oranges

    Mediumgraphbfsmatrix

    In grid, 0 is empty, 1 a fresh orange and 2 a rotten one. Every minute, a fresh orange next to (up/down/left/right) a rotten one becomes rotten. Return the minutes until no fresh orange remains, or -1 if that never happens.

    Example 1

    Input:  grid = [[2,1,1],[1,1,0],[0,1,1]]
    Output: 4

    Example 2

    Input:  grid = [[2,1,1],[0,1,1],[1,0,1]]
    Output: -1

    The bottom-left orange can never be reached.

    Example 3

    Input:  grid = [[0,2]]
    Output: 0

    Constraints

    • 1 ≤ rows, cols ≤ 50
    • Each cell is 0, 1 or 2

    Submit checks your solution against 9 tests, including hidden ones.

    /**
     * @param {int[][]} grid
     * @return {int}
     */
    function orangesRotting(grid) {
      
    }
    
    Sign in to run
    SeaCode

    Learn to code for real, online or at our branch in front of Cairo University, Giza.

    Learn

    • All courses
    • Interactive tutorials
    • Interview practice problems
    • Mock interview
    • Learning tracks
    • Code Arena
    • Workshops & Events
    • Knowledge library
    • Team projects

    Your account

    • Log in
    • Sign up
    • Learning plan
    • Certificates
    • Site map

    Contact us

    • WhatsApp
    • 010 9094 1104
    • In front of Cairo University, Giza

    © 2026 SeaCode. All rights reserved.