摘要: ACWing Description 给定一个长度为N的数列A以及一个整数T.我们要把A分成若干段,使得每一段的'校验值'都不超过N.求最少需要分成几段. Sol 首先是校验值的求法: 要使得'每对数的差的平方'之和最大,显然就是先排序,然后取最大和最小为一对,次大和次小为一对..... 然后是问题 阅读全文
posted @ 2019-07-24 19:09 DTTTTTTT 阅读(223) 评论(6) 推荐(0) 编辑
摘要: Poj Description 给定一个长度为n的序列a,如果只允许进行比较和交换相邻两个数的操作,求至少需要多少次交换才能把a从小到大排序. Sol 只允许比较和交换相邻两个数,就是冒泡排序算法. 只有在前者大于后者的时候才会交换相邻两个数,也就是每交换一次逆序对就减少一个 最后序列排序完毕后,逆 阅读全文
posted @ 2019-07-24 15:18 DTTTTTTT 阅读(173) 评论(0) 推荐(0) 编辑
摘要: Poj Description 动态维护中位数问题 Sol "对顶堆"的在线做法 建立两个二叉堆,一个大根堆一个小根堆 在依次读入这个整数序列的过程中,设当前序列为l,要始终保证: 1.序列中从小到大排名为1~l/2的整数存在大根堆中 2.序列中从小到大排名为l/2+1~l的整数存在小根堆中 每次插 阅读全文
posted @ 2019-07-24 11:41 DTTTTTTT 阅读(170) 评论(1) 推荐(0) 编辑