A

略,发现只有当末尾为9时才满足条件..

B

简单模拟,注意数组大小!!!

C

简单模拟。

D

比较暴力的一个做法就是每次找一个开始匹配的起始点,然后每次不同时向后跳2就行了。

注意这里最后还要判断一下剩下的串的个数是不是偶数!!!复杂度应该是\(O(n^2)\)但水过了就是水过了...

E

好题!起码对我来说是这样的,学到了许多的知识...

首先我们先将所有的数字减1,将一个排列位置上的数和它的标号都减一。例如:\(n=4\),\(p[0]=0,p[1]=1,p[2]=2,p[3]=3.\)这是一个排列。或者打乱一下,\(p[0]=2,p[1]=3,p[2]=0,p[3]=1\),这也是一个排列,反正我们就是要将数和位置数都减一。为什么这样做呢,因为像这样的整体移动,往往和对n取模有关,例如当\(k=2\)时,数组变成\(p[0]=2,p[1]=3,p[2]=0,p[3]=1\),我们发现对于\(>=k+1\)的数下标为i的就变成了\(i-k\),这个很好想,毕竟他们就是从原来的数被迫向后推了\(k\)。对于前\(k\)个数我们找一下规律,\(p[0]=2=n-1-(k-1)=n-k,p[1]=3=n-k+1\),同理可推得\(p[i]=n-k+i,p[i]=i-k+n\),发现和\(i-k\)的形式就多了一个\(n\),怎么办,我们取模啊,于是就有了\(p[i]≡i-k\)(%n),也就是说对于一个k,我们就能知道了其序列应该满足上式。之后考率给定一个k我们怎么用最少的次数将它还原成目标数列\(b[i]\),一个做法就是用图论的知识,环图,我们将p[i]向b[i]连边。意思是在p[i]序列中p[i]要和b[i]交换。考虑这样做后整个图一定是若干个环,对于每个环我们要花费环中元素的个数-1的次数才能将环中的数都还原。这样之后我们总的还原次数就是n-环的个数。好了,结束了...

不对啊,难道我们要对每一个k都做一下上述找环的过程吗?这个过程不是\(O(n^2)\)的吗?

考虑题中给的\(m\leq \frac{n}{3}\)有何用意,我们考虑一个能够用m次交换就能成功的排列,那么其最多有2m个数是乱序的,那么也就是说这个排列最少有n-2m个数是在自己本来位置上的。我们可以用一个数组\(cnt_i\)表示\(k=i\)在自己正确的位置上的数的个数。

考虑\(k=0,1,...,n-1\)这n个排列是各不相同,也就是说对于\(k1!=k2,p_{k1}[i]!=p_{k2}[i]\)这样的话由于目标序列只有一个,所以每个位置只会在其中的一个k中是正确的,在其他的位置都不正确,即\(\sum{cnt_i}=n\)。这样的话我们只需要在目标序列上找到其对应正确位置的k值,之后我们只用检查满足要求的k值,等等这样的k值一共有多少个,\(\frac{n}{n-\frac{2n}{3}}\)那不是3吗?

也就是说说最多有3个k值需要我们去找环,放心食用.

F

未完待续...

Harbour.Space Scholarship Contest 2021-2022 (Div. 1 + Div. 2) Editorial题解的更多相关文章

  1. CF1553X Harbour.Space Scholarship Contest 2021-2022 (Div. 1 + Div. 2)

    掉大分 E 对于一个序列,把它排回去的最小次数是 $\sum置换环大小-1=错位个数-置换环个数$ 注意到m小于等于n/3.那么最多修正2m个错位.正确位置的个数必须大于等于n/3才可能在m次内修正. ...

  2. Harbour.Space Scholarship Contest 2021-2022 题解

    多好的上分机会啊,要是换个时间(指改在 NOI 之后)我说不定就能上 2500 了(做白日梦 ing) A 签到题不多说,显然只有末尾为 \(9\) 的数是 interesting 的,因此答案就是 ...

  3. KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200) 题解

    KYOCERA Programming Contest 2021(AtCoder Beginner Contest 200) 题解 哦淦我已经菜到被ABC吊打了. A - Century 首先把当前年 ...

  4. Lyft Level 5 Challenge 2018 - Final Round (Open Div. 2) (前三题题解)

    这场比赛好毒瘤哇,看第四题好像是中国人出的,怕不是dllxl出的. 第四道什么鬼,互动题不说,花了四十五分钟看懂题目,都想砸电脑了.然后发现不会,互动题从来没做过. 不过这次新号上蓝名了(我才不告诉你 ...

  5. Codeforces Round #792 (Div. 1 + Div. 2) A-E

    Codeforces Round #792 (Div. 1 + Div. 2) A-E A 题目 https://codeforces.com/contest/1684/problem/A 题解 思路 ...

  6. CF Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined)

    1. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) B. Batch Sort    暴力枚举,水 1.题意:n*m的数组, ...

  7. xHTML+div布局:三个div,两边div宽度固定,中间div宽度自适应

    xHTML+div经常考题:三个div,两边div宽度固定,中间div宽度自适应. 和大家分享一个实现方式: 1.html代码 <div class="dyleft"> ...

  8. getElementsByTagName("div")和$("div")区别

    作者:zccst <body> <div class="selected">1</div> <div class="select ...

  9. 【codeforces】【比赛题解】#868 CF Round #438 (Div.1+Div.2)

    这次是Div.1+Div.2,所以有7题. 因为时间较早,而且正好赶上训练,所以机房开黑做. 然而我们都只做了3题.:(. 链接. [A]声控解锁 题意: Arkady的宠物狗Mu-mu有一只手机.它 ...

随机推荐

  1. C语言中的符号重载

    摘自<C专家编程>第二章37页                     C语言中符号的重载 符号 意义 static 在函数内部,表示该变量的值在各个调用间一直保持延续性在函数这一级,表示 ...

  2. Jmeter监控技术实战

    性能测试中监控的意义 为性能分析提供依据 监控方案 serverAgent jmeter的插件,监控颗粒度不高,界面简陋 服务器中启动 jmeter中添加插件 Nmon Grafana 优秀监控方案所 ...

  3. Linux 清理缓存

    1. free -m 命令可以查看内存使用情况  2. sync   :因为系统在操作的过程当中,会把你的操作到的文件资料先保存到buffer中去,因为怕你在操作的过程中因为断电等原因遗失数据,所以在 ...

  4. Spring Cloud Gateway 没有链路信息,我 TM 人傻了(下)

    本系列是 我TM人傻了 系列第五期[捂脸],往期精彩回顾: 升级到Spring 5.3.x之后,GC次数急剧增加,我TM人傻了 这个大表走索引字段查询的 SQL 怎么就成全扫描了,我TM人傻了 获取异 ...

  5. 鸿蒙内核源码分析(信号消费篇) | 谁让CPU连续四次换栈运行 | 百篇博客分析OpenHarmony源码 | v49.04

    百篇博客系列篇.本篇为: v49.xx 鸿蒙内核源码分析(信号消费篇) | 谁让CPU连续四次换栈运行 | 51.c.h .o 进程管理相关篇为: v02.xx 鸿蒙内核源码分析(进程管理篇) | 谁 ...

  6. 牛客练习赛89E-牛牛小数点【数论】

    正题 题目链接:https://ac.nowcoder.com/acm/contest/11179/E 题目大意 定义\(f(x)\)表示\(\frac{1}{x}\)的混循环节长度(如果没有循环节就 ...

  7. P5056-[模板]插头dp

    正题 题目链接:https://www.luogu.com.cn/problem/P5056 题目大意 \(n*m\)的网格,求有多少条回路可以铺满整个棋盘. 解题思路 插头\(dp\)的,写法是按照 ...

  8. 深入浅出WPF-09.Command(命令)

    命令 1)命令系统的基本元素 命令(Command),WPF的命令实际上就是实现了ICommand接口的类,平时使用最多的是RoutedCommand类 命令源(Command Source),即命令 ...

  9. 通俗易懂,Layui前端框架!

    前言   layui 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用.其外在极简,却又不失饱满的内在,体积轻盈,组件丰盈,从核心代 ...

  10. Node.js Koa框架学习笔记

    Koa 基本介绍 Koa是Node.js中非常出名的一款WEB框架,其特点是短小精悍性能强. 它由Express原版人马打造,同时也是Egg框架的设计蓝图,可以说Koa框架的学习性价比是非常高的. 官 ...