求证明考场思路或 hack
  • 板块学术版
  • 楼主rainygame
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/7/31 10:19
  • 上次更新2023/11/3 06:48:10
查看原帖
求证明考场思路或 hack
804607
rainygame楼主2023/7/31 10:19

题目:

有一个长度为 nn 的数列 aa,保证 ai≠aj(i≠j)a_i \ne a_j(i \ne j)。现在可以随意交换两个数。请问最少需要多少次才可以使得数列从小到大排序?

n≤105n \le 10^5

思路:

把数列 aa 的每一个数的下标和在排序好的 aa 的那个数的下标连一条有向边。显然每个结点入度为 11,出度为 11,是必然形成若干个环的。然后答案为所有环的点数-1后的和。(别问我怎么想出来的,我也不知道)

有一个大佬证明了不可能比答案大和不可能比答案小,听着好迷糊。

2023/7/31 10:19
加载中...