题目名称 4499. 陆家嘴想起飞
输入输出 wantfly.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 20
题目来源 GravatarRuyi 于2026-09-09加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:5, 提交:12, 通过率:41.67%
Gravatarxuyuqing 100 0.264 s 4.23 MiB C++
Gravatar汐汐很希希 100 0.264 s 4.32 MiB C++
Gravatarexil 100 0.551 s 12.46 MiB C++
GravatarRuyi 100 0.553 s 4.21 MiB C++
Gravatar2_16鸡扒拌面 100 0.633 s 4.07 MiB C++
Gravatar2_16鸡扒拌面 80 4.918 s 5.58 MiB C++
Gravatar2_16鸡扒拌面 55 11.226 s 6.60 MiB C++
Gravatar2_16鸡扒拌面 55 11.301 s 6.57 MiB C++
Gravatar2_16鸡扒拌面 55 11.306 s 6.57 MiB C++
Gravatar2_16鸡扒拌面 50 11.337 s 6.54 MiB C++
关于 陆家嘴想起飞 的近10条评论(全部评论)
陆家嘴能飞,陆家嘴能飞,陆家嘴能飞,家嘴~
Gravatarxuyuqing
2026-09-11 20:05 1楼

4499. 陆家嘴想起飞

★★☆   输入文件:wantfly.in   输出文件:wantfly.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目背景】


I can fly

Yeah I can fly

我能飞

--《陆家嘴能飞》

现在,陆家嘴又想起飞了


【题目描述】

陆家嘴有一个包含$0$到$n-1$的每个整数恰好一次,长度$n$是$2$的幂的序列,他有两种操作:

----1.“你是陆家嘴吗”:该操作可以使整个序列异或上一个陆家嘴指定的数字

----2.“Yeah I can fly”:该操作可以交换陆家嘴指定的两个相邻数字

陆家嘴认为,如果一个序列是单调递增的,那么这个序列就能让他飞起来

现在,陆家嘴又想飞起来了,但是因为他着急给矿坑老板写题目,所以请聪明的你帮助他用最少的操作次数起飞

大样例

【输入格式】

第一行一个整数$n$

第二行$n$个整数,代表序列$a$

【输出格式】

输出最少的操作次数

【样例输入1】

8
0 1 3 2 5 4 7 6

【样例输出1】

2

【样例输入2】

8
2 0 1 3 4 5 6 7

【样例输出2】

2

【样例说明】

在第一个样例中,我们可以通过以下两次操作将排列排序:

----1.交换$a_1,a_2$,排列变为$[1,0,3,2,5,4,7,6]$

----2.选择$x=1$,并将所有元素与$1$进行异或,排列变为$[0,1,2,3,4,5,6,7]$

【数据规模与约定】

对于前$20$%的数据,$n≤8$

对于前$40$%的数据,$n≤512$

对于前$60$%的数据,$n≤2048$

对于另外$20$%的数据,初始序列是降序

对于$100$%的数据,$n≤2^{18}$