hdu6058 链表+思维 2017多校第三场1003
题意
给出一个n和一个k,求1~n的每个区间的第k大的数的总和是多少,区间长度小于k的话,贡献为0。题解
因为给出的n个数是1-n的全排列,所以我们从小开始枚举第k大的值,即枚举第k大的值从1到n-k+1。剩下的值不可能有k-1个数比它大所以不可能是第k大数,贡献为0,所以不用枚举。对于每个枚举的值,从该值的位置向前找k个比它大的数的位置,向后找k个比它大的数的位置。然后就可以计算所有第k大数为
原创
2017-08-02 14:54:57 ·
388 阅读 ·
0 评论