历届试题 小朋友排队
时间限制:1.0s 内存限制:256.0MB
问题描述
n 个小朋友站成一排。现在要把他们按身高从低到高的顺序排列,但是每次只能交换位置相邻的两个小朋友。
每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是0。
如果某个小朋友第一次被要求交换,则他的不高兴程度增加1,如果第二次要求他交换,则他的不高兴程度增加2(即不高兴程度为3),依次类推。当要求某个小朋友第k次交换时,他的不高兴程度增加k。
请问,要让所有小朋友按从低到高排队,他们的不高兴程度
每个小朋友都有一个不高兴的程度。开始的时候,所有小朋友的不高兴程度都是0。
如果某个小朋友第一次被要求交换,则他的不高兴程度增加1,如果第二次要求他交换,则他的不高兴程度增加2(即不高兴程度为3),依次类推。当要求某个小朋友第k次交换时,他的不高兴程度增加k。
请问,要让所有小朋友按从低到高排队,他们的不高兴程度

本文介绍了蓝桥杯竞赛中遇到的一道算法题,该题目的核心是寻找不开心值的最小交换次数。通过分析发现冒泡排序会导致超时,而逆序对的计数是解决问题的关键。文章详细解释了逆序对的概念,并指出树状数组在求解区间和上的应用,从而快速计算逆序对,避免超时。同时,指出了在处理大数据时使用`long long int`防止数据溢出的重要性。
最低0.47元/天 解锁文章
639

被折叠的 条评论
为什么被折叠?



