http://poj.org/problem?id=3709

给定一个长度为n的非严格单调递增数列a1,...,an.每一次操作可以使数列中的任何一项的值减小1。现在要使数列中的每一项都满足其他项中至少有k-1项和它相等。求最少要对这个数列操作的次数。

输入:第一行为测试数据的组数T(1 ≤ T ≤ 20)

每组测试数据包含两行:

第一行为两个正整数n,k。n为数列中元素的个数 (2 ≤ n ≤ 500000);

第二行为非严格单调递增数列的n个整数,正整数的取值范围为[0, 500000]。

输出:

每组测试数据输出一个正整数,即最少要对这个数列操作的次数。

Sample Input

2
7 3
2 2 3 4 4 5 5
6 2
0 3 3 4 8 9

Sample Output

3
5

K-Anonymous Sequence(poj 3709)的更多相关文章

  1. Sequence POJ - 2442

    Sequence POJ - 2442 口胡一个结论:就是前i行产生的最小的n个和,一定可以在"前i-1行产生的最小n个和,每一个加上这一行的任意一个数,产生的n2个数"中找到.( ...

  2. POJ 3709 K-Anonymous Sequence(斜率优化DP)

    [题目链接] http://poj.org/problem?id=3709 [题目大意] 给出一个长度为n个非严格单调递增数列,每次操作可以使得其中任意一项减一, 问现在使得数列中每项数相同的数的数量 ...

  3. POJ 3709 K-Anonymous Sequence

    题目大意:将一个升序的,有N个元素的序列,分组.要求每组的元素不少于K个,计算出组内各元素与最小元素的之差的和,将每组的这个值加起来,其和要最小. N<500000,K<N 分析: dp[ ...

  4. POJ 3709 K-Anonymous Sequence (单调队列优化)

    题意:给定一个不下降数列,一个K,将数列分成若干段,每段的数字个数不小于K,每段的代价是这段内每个数字减去这段中最小数字之和.求一种分法使得总代价最小? 思路:F[i]表示到i的最小代价.f[i]=m ...

  5. POJ 3709 K-Anonymous Sequence - 斜率优化dp

    描述 给定一个数列 $a$, 分成若干段,每段至少有$k$个数, 将每段中的数减少至所有数都相同, 求最小的变化量 题解 易得到状态转移方程 $F_i = \min(F_j  + sum_i - su ...

  6. HDU 2665.Kth number-可持久化线段树(无修改区间第K小)模板 (POJ 2104.K-th Number 、洛谷 P3834 【模板】可持久化线段树 1(主席树)只是输入格式不一样,其他几乎都一样的)

    Kth number Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  7. 动态数组第k小,Poj(1442)

    题目链接:http://poj.org/problem?id=1442 本来想复制一下,然后直接sort,结果T了. 在网上看了一下,有用两个队列做的,想了半天,没看懂什么意思.后来模拟一边,总算是懂 ...

  8. K短路模板POJ 2449 Remmarguts' Date

      Time Limit: 4000MS   Memory Limit: 65536K Total Submissions:32863   Accepted: 8953 Description &qu ...

  9. DNA Sequence POJ - 2778 AC自动机 && 矩阵快速幂

    It's well known that DNA Sequence is a sequence only contains A, C, T and G, and it's very useful to ...

随机推荐

  1. linux笔记:链接命令,软链接和硬链接

    命令名称:ln功能:生成链接文件命令所在目录:/bin/ln用法:ln [-s] 原文件 目标文件参数:-s 创建软链接(不写此参数则生成硬链接) 软链接:类似windows中的快捷方式.它只是一个链 ...

  2. WCF技术剖析之二:再谈IIS与ASP.NET管道

    原文地址:http://www.cnblogs.com/artech/archive/2009/06/20/1507165.html 在2007年9月份,我曾经写了三篇详细介绍IIS架构和ASP.NE ...

  3. 笔记9:winfrom的一些知识点(二)

    一.新建,和删除文件夹 private void button4_Click(object sender, EventArgs e) { Directory.Delete(@"F:\&quo ...

  4. notepad++之TextFX插件

    一.安装 插件→Plugin Manager→Show Plugin Manager,Availble→选中TextFX→install 二.使用 1.去除重复行 TextFX—>TextFX ...

  5. iOS 推送全解析

    本文旨在对 iOS 推送(以下简称 推送)进行一个完整的剖析,如果你之前对推送一无所知,那么在你认真地阅读了全文后必将变成一个推送老手,你将会对其中的各种细节和原理有充分的理解.以下是 pikacod ...

  6. 求平均排序MATLAB code

    A0=R(:,1:2:end); for i=1:17 A1=A0(i,:); p=sort(unique(A1)); for j=1:length(p) Rank0(A1==p(j))=j; end ...

  7. 445. Add Two Numbers II ——while s1 or s2 or carry 题目再简单也要些测试用例

    You are given two linked lists representing two non-negative numbers. The most significant digit com ...

  8. GridView72变 控件

    快速预览:GridView 无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单 DropDownList结合GridView和CheckBox结 ...

  9. JDE修改Grid列样式

    Set Grid Color :to change the background color of a cell, row, column, or the entire control. Set Gr ...

  10. sqlserver获取表名,字段名

    一.获取表的基本信息 SELECT [TableName] = [Tables].name , [TableOwner] = [Schemas].name , [TableCreateDate] = ...