Search⌘ K
AI Features

Solution: Build a Matrix with Conditions

Explore how to construct a k × k matrix from integer conditions on rows and columns by applying topological sort. Understand how to detect cycles in constraints, map values to positions, and handle cases where a valid matrix cannot be formed.

Statement

You are given a positive integer kk and two conditions:

  • A 2D integer array rowConditions of size nn, where rowConditions[i] = [above[i], below[i]]. This indicates that above[i] must appear in a row above below[i] in the final matrix.

  • A 2D integer array colConditions of size mm, where colConditions[i] = [left[i], right[i]]. This indicates that left[i] must appear in a column to the left of right[i] in the final matrix.

Both arrays contain integers ranging from 11 to kk.

You need to construct a k×kk \times k matrix that includes all the integers from 11 to kk ...