Quick Overview

This question evaluates algorithmic problem-solving in grid reachability and frequency analysis, testing concepts such as grid/graph traversal and obstacle handling for path existence alongside frequency counting and selection for top-k elements.

Solve grid path and top‑k frequency

Company: Meta

Role: Software Engineer

Category: Coding & Algorithms

Difficulty: medium

Interview Round: Technical Screen

Part A — Grid Reachability with Obstacles: Given an m×n matrix of 0s and 1s where 0 indicates a passable cell and 1 indicates a blocked cell, starting at (0, 0) determine whether there exists a path to the bottom-right cell (m−1,n− 1). You may move up, down, left, or right within bounds and cannot enter blocked cells. Return true if such a path exists, otherwise false. Part B — Top‑K Frequent Numbers: Given an array of integers and an integer k, return the k numbers that appear most frequently in the array. If multiple numbers have the same frequency, any order among them is acceptable.

Quick Answer: This question evaluates algorithmic problem-solving in grid reachability and frequency analysis, testing concepts such as grid/graph traversal and obstacle handling for path existence alongside frequency counting and selection for top-k elements.

Grid Reachability With Obstacles

Return whether a 4-neighbor path exists from top-left to bottom-right through zero cells.

Constraints

  • Inputs are Python literals matching the function signature.
  • Return a deterministic exact-match value.

Examples

Input: ([[0,0],[1,0]],)

Expected Output: True

Explanation: Path exists.

Input: ([[0,1],[1,0]],)

Expected Output: False

Explanation: No path through obstacles.

Hints

  1. Clarify edge cases before coding.
  2. Keep the return value deterministic.

Top K Frequent Numbers

Return the k most frequent numbers, breaking ties by smaller numeric value.

Constraints

  • Inputs are Python literals matching the function signature.
  • Return a deterministic exact-match value.

Examples

Input: ([1,1,1,2,2,3], 2)

Expected Output: [1, 2]

Explanation: Return top two by frequency.

Input: ([4,4,5,5,6], 2)

Expected Output: [4, 5]

Explanation: Ties are broken by numeric value for deterministic output.

Hints

  1. Clarify edge cases before coding.
  2. Keep the return value deterministic.

Loading coding console...