用户工具

站点工具


2022-2023:teams:kunkunkun:2022-nowcoder-9

这是本文档旧的修订版!


2022 牛客暑期多校训练营9

E-Longest Increasing Subsequence

构造一个1,2,…,𝑛的排列,使其恰好有𝑚个不同的最长上升子序列。$1\le m\le 10^9,1\le n\le 100$
将 $m$ 二进制拆分,设 $m=a_02^0+a_12^1+\cdots+a_k2^k$,其中 $a_k=1$,则可以构造 $2143\cdots (2k)(2k-1)$ 达到 $2^k$,再通过在中间按顺序插入大于 $2k$ 的数以构造 $2^i,i\in[0,k)$,最后在通过插入并调整大于 $2k$ 的数来维持上升子序列的长度一样。

2022-2023/teams/kunkunkun/2022-nowcoder-9.1661305289.txt.gz · 最后更改: 2022/08/24 09:41 由 sd_ltt