#N26. 花开花落
花开花落
花开花落
花开花落
聚成一团野火
散作漫天星河
——弹壳《花开花落》
题目背景
那是他们在机房的最后一个晚上。
灯熄了一半,没有人走。有人把最后一份代码交上去,有人趴在桌上睡着,有人盯着屏幕上那行红字,固执地改到指尖发麻。
凌晨,队长把所有人叫到楼下。
「站好吧,」他说,「最后一张合照。」
路灯下,谁也不肯将就自己的位置。谁站在谁前面,谁又该退后半步,他们像争一道题的解法一样争了很久——好像只要这一排站对了,这些日子就能多留一会儿。
「你们知道吗,」队长忽然开口,「这一排里,每一对站错的人,都算一个遗憾。」
「那就调。」
「只能一点一点地挪。」他看着远处没亮的天,「挪到遗憾刚好剩下 个为止。」
「为什么是 个?」
「因为剩下的那些,」他笑了笑,「我替我们收着。」
于是他们开始交换位置。一个人退开,另一个人顶上;倒计时在头顶走着,快门却迟迟没有按下。有人喊了一句什么,所有人都笑了,笑着笑着就没了声音。
那一刻他们像是又回到赛场上——时间不够,题不会做,可没有一个人肯先放下键盘。
后来天亮了。
队伍散进各自的清晨。有人去了很远的城市,有人再也没打过比赛,有人把奖牌塞进抽屉,再也没有打开。
可每当夜里抬头,队长总觉得那天的队伍还在——
聚是一团野火,散作漫天星河。
题目描述
给定一个 到 的排列 ,以及一个非负整数 。
一次操作可以交换 中相邻的两个数。
请问至少需要多少次操作,才能使排列的逆序对数恰好等于 ?
逆序对是指一对下标 满足 。保证 。
输入格式
第一行两个整数 和 。
第二行 个整数 ,保证是 到 的一个排列,相邻两个数之间用一个空格隔开。
输出格式
一行一个整数,表示最少操作次数。
样例
5 3
5 1 2 4 3
2
数据范围
,。
提示:有些遗憾可以调,有些日子回不去;另外,答案记得开 long long。
相关
在下列比赛中: