传送门

A:

一个组 \(2^n+2^1+\dots+2^{\frac{n}{2}-1}\),另一个组剩下的。

B:

考虑不停循环。

如果不同的数字超过 \(k\),无解。

否则先把原序列去重,然后把末尾补一些数补成 \(k\) 个,再把这个新序列循环 \(n\) 次。

C:

先把字符们排序。

肯定先把最小的 \(k\) 个字符作为各自的开头。

  1. 如果前 \(k\) 个就有不同的字符,那么以第 \(k\) 个字符开头的一定是字典序最大的。(因为字符排序了)直接把之后的字符全部丢到其他地方去,答案就是第 \(k\) 个字符。

  2. 否则:

    1. 如果这之后的字符都相等,除以一下再加个余数;

    2. 否则第 \(n\) 个字符肯定比前面的大,我们要让这个字符尽可能往后拖,那么我们把 \(k+1\sim n\) 的字符全部堆到一个字符串上即可。

D:

形式化题意:

初始有 \(sum=1,x=1\),每次可以让 \(x=[x,x*2]\) 内的一个数,然后让 \(sum+=x\),最小化操作次数使得 \(sum=k\),\(k\) 给定。

最小化,肯定想着不停乘二乘二。但是可能最后一次时 \(x\) 太大了。

但是没关系,我们可以把最后剩下的一点提到之前加上。

E:

我们可以先令所有 \(a_i=a_i-i\),这样就把上升变成了非降。

这么做的原因是我们不用判断两个锁定的数之间的距离:比如 \(4\) 和 \(7\) 中间隔了三个数,但是要求严格上升,那就不行了。

现在把 \(a_i\) 重新赋值之后,只要两个锁定的不是后面的比前面的小就行。

我们把两个锁定的之间的段抽出来处理。

假设我们现在处理 \((l,r)\)。(也就是 \(l,r\) 这俩被锁定了,我们可以让 \(b_0=0,b_{k+1}=n+1\))

这个段内的所有不在 \([a[l],a[r]]\) 内的数,肯定都要改。剩下在 \([a[l],a[r]]\) 的数内,找出一个最长不降子序列不改,再剩下的改。

LIS 要优化。

注意:不可能成功说明有俩被锁定的本身就不满足非降。

随机推荐

  1. zzuli 1902: 985的因子对难题

    ***这道题明显是在卡时间,类比快速打素数表的算法,*** #include<iostream> #include<cstdio> #include<cstring> ...

  2. 线性代数 · 矩阵 · Matlab | Moore-Penrose 伪逆矩阵代码实现

    背景 - Moore-Penrose 伪逆矩阵: 对任意矩阵 \(A\in\mathbb C^{m\times n}\) ,其 Moore-Penrose 逆矩阵 \(A^+\in\mathbb C^ ...

  3. 【TouchGFX】MIXINS - ClickListener

    ClickListener Click Listener混合器使它可以应用到其小部件,并能够通过使用回调扩展小部件来响应触摸输入. 在TouchGFX Designer中,可以通过在" Mi ...

  4. Oracle12c新增max_idle_time参数的学习与感触

    Oracle12c新增max_idle_time参数的学习与感触 TLDR 其实任何软件出了新版本.readme 是很重要的. 尤其是数据库, 涉及到底层问题的. 比如这次遇到的Oracle的max_ ...

  5. [转帖]docker 镜像分层原理及容器写时复制

    https://xie.infoq.cn/article/19c98e8b15ff9f610a2ee26bd 一.镜像分层与容器层 在进行docker pull 下载镜像的时候,通过下图可以看到镜像是 ...

  6. Python学习之三: 编译二进制

    Python学习之三: 编译二进制 摘要 每次使用python 执行py文件其实是比较麻烦的 主要是还得安装python的虚拟机,以及安装对应的pip包. 感觉比较繁杂 理论上最快捷的方式是编译成 二 ...

  7. [转帖]Centos7 nginx访问日志文件割接

    一.yum安装nginx 二.各文件路径( /etc/nginx/nginx.conf) 1.访问日志路径:access_log /var/log/nginx/access.log main; 2.p ...

  8. [转帖]关于iostat的问题,svctm数据不可信

    使用FIO对磁盘进行压力测试,使用1个线程对磁盘进行随机读,设置单次read的数据块分别为128KB和1M,数据如下: (1)单次IO数据块为128KB (2)单次IO数据块为1M 从上面的数据可以看 ...

  9. 多模态 GPT-V 出世!36 种场景分析 ChatGPT Vision 能力,LMM 将全面替代大语言模型?

    LMM将会全面替代大语言模型?人工智能新里程碑GPT-V美国预先公测,医疗领域/OCR实践+166页GPT-V试用报告首发解读 ChatGPT Vision,亦被广泛称为GPT-V或GPT-4V,代表 ...

  10. vue关于通过下标更改数组的理解

    案例1:通过下标更改数组失败 <template> <div> <el-button @click="handlerMe2"> 改变 arr & ...