首页
比赛
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
Stack
5条解析
开通博客写题解
Kanoon
发表于 2021-07-19 20:35:16
K 题 题解 在数组 中,每个给出的 前一定有一段 的子序列,不妨把这段子序列连续地放在 前,之后判断构造出的数组 是否合法。 数组 合法即 且不存在两个相邻的数后者与前者之差大于 。 之后,考虑 的位置,因为 是最小的,每次出现一定会将栈清空且无法被之后的数清空,所以 一定在
展开全文
Kur1su
发表于 2021-07-19 22:49:52
Description 有一个排列 , 令 表示 中满足 的 的个数,现在给出 个不重复的 和 ,问能否构造一个 排列 符合条件。 Solution (这个做法感觉比拓扑排序好理解)显然对于每一个 ,必须满足 ,那么对于未给出数值的 ,可以考虑先给它们填充上数值,不妨令 ,这样构造能够满
展开全文
ssllyf
发表于 2021-07-19 20:24:23
题目大意 有n个数,依次加进栈中,每次加入前将栈顶比大的所有元素弹掉,加入后记为栈的大小 现在给你b中的一些数,让你求a数组的一种合法方案,其中1~n在a中各出现了一次 解题思路 每次把栈顶比大的所有元素弹掉,使得栈是单调递增的 对于所求a数组,可以先连边,表示该点要比哪个点大,然后跑拓扑序 那么
展开全文
sunny_forever
发表于 2021-07-21 13:51:16
K题题解 法1: 构造拓扑关系 思路:先假设 我们要求的序列 a 为: 1、2、3、...... 、n然后对序列 a 进行题目描述中的单调栈操作, 构造出满足 所给b[i] 的拓扑关系拓扑关系:在这里 指位置间的拓扑关系 ,比如 pos1 指向 pos2 , 代表 a[pos1] 需大于 a[pos
展开全文
哭晕了
发表于 2021-07-22 00:00:01
K题:(搞不懂拓扑排序的超小白讲解)总体思路为利用已知b[i]推出b[i-1]信息,将1-n每个数填充至ans数组构造答案.直接进行代码讲解:首先读入数据,我们用一个book数组来记录当前位置是否有约束,显然当下标小于需要长度或者两者大于n时输出-1 #include<bits/stdc++.
展开全文
查看本题
查看本题讨论
相关比赛
11253-2021牛客暑期多校训练营2
进入比赛
81001-2024牛客五一集训派对day5
进入比赛
等你来战
查看全部
牛客周赛 Round 98
报名截止时间:2025-06-29 21:00
牛客小白月赛119
报名截止时间:2025-07-04 21:00
牛客周赛 Round 99
报名截止时间:2025-07-06 21:00
牛客练习赛142
报名截止时间:2025-07-11 21:30
牛客周赛 Round 100
报名截止时间:2025-07-13 21:00
2025牛客暑期多校训练营1
报名截止时间:2025-07-15 17:00
2025牛客暑期多校训练营2
报名截止时间:2025-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题