type
status
date
slug
summary
tags
category
icon
password
创建时间
Jan 9, 2025 01:54 AM
给你一个 正 整数
k
,同时给你:- 一个大小为
n
的二维整数数组rowConditions
,其中rowConditions[i] = [abovei, belowi]
和
- 一个大小为
m
的二维整数数组colConditions
,其中colConditions[i] = [lefti, righti]
。
两个数组里的整数都是
1
到 k
之间的数字。你需要构造一个
k x k
的矩阵,1
到 k
每个数字需要 恰好出现一次 。剩余的数字都是 0
。矩阵还需要满足以下条件:
- 对于所有
0
到n - 1
之间的下标i
,数字abovei
所在的 行 必须在数字belowi
所在行的上面。
- 对于所有
0
到m - 1
之间的下标i
,数字lefti
所在的 列 必须在数字righti
所在列的左边。
返回满足上述要求的 任意 矩阵。如果不存在答案,返回一个空的矩阵。
拓扑排序
思路:行与列是独立的,因此使用两次拓扑排序,可以得到行或列的关系。
需要注意的是,我们在拓扑排序中得到的顺序关系是
📎 参考
- 无