【Hrbust】合唱队形

博客探讨如何构造一个保持递增或先递增后递减顺序的合唱队形。通过分析每个人在队列中的最终位置,提出在遇到相同高度的人时,选择最左侧或最右侧的策略来优化队形。
摘要由CSDN通过智能技术生成
Description
    一年一度的清明节又要到了(?)
    学校决定开个晚会庆祝一下(?)
    由于泥工男孩子实在太多啦,跳舞是不可能跳舞的。于是他们决定站成一排唱歌。
    众所周知的,音乐老师往往都是有强迫症的人。他想要让最终队形的身高序列从左到右先严格不减再严格不增。比如(1,2,3,2,1),(1,4,4,2),(1,2,3)都是合法序列,但是(8,7,9)不是。
    为了使得这个序列合法,音乐老师可以每次交换两个相邻的同学的位置。现在她想求助你,最少进行多少次交换才能使这个队形合法
Input
    多组数据。
    第一行一个整数 T 表示数据组数(T<=5)
    对于每一组数据:
        第一行一个整数 n 表示队列人数(1<=n<=100000)
        第二行 n 个正整数 Ai 表示队列中每个人的身高(1<=Ai<=100000)
Output
    对于每一组数据,输出一行一个整数表示最小操作次数
Sample Input
    2
    7
    3 1 4 1 5 9 2
    9
    10 4 6 3 15 9 1 1 12
Sample Output
    3
    8

 

 【题意】:

<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值