题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=25843

思路:我们可以发现题目与点的X坐标没有关系,于是可以直接对y坐标进行排序,然后进行dp,dp[i][j]表示以j个区间覆盖前i个点的最大覆盖数。

 #include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
#define MAXN 111
#define FILL(a,b) memset(a,b,sizeof(a)) int n,w,k,dp[MAXN][MAXN];
int y[MAXN];
int pre[MAXN],num[MAXN]; int main()
{
int _case,x,t=;
scanf("%d",&_case);
while(_case--){
scanf("%d%d%d",&n,&w,&k);
for(int i=;i<=n;i++){
scanf("%d%d",&x,&y[i]);
}
sort(y+,y++n);
FILL(dp,);
int p1=,p2=;
pre[]=,num[]=;
while(p1<=n){
p1++;
while(y[p1]-y[p2]>w)p2++;
pre[p1]=p2-;
num[p1]=p1-p2+;
}
for(int i=;i<=n;i++){
for(int j=;j<=k;j++){
dp[i][j]=max(dp[i-][j],dp[pre[i]][j-]+num[i]);
}
}
printf("Case %d: %d\n",t++,dp[n][k]);
}
return ;
}

最新文章

  1. Visual Studio 2015 Update 2正式版下载地址
  2. java中的foreach循环
  3. BZOJ3224 普通平衡树
  4. Fragment 操作原理
  5. ZeroMQ - 三种模型的python实现
  6. zhx and contest (枚举  + dfs)
  7. android 系统相册调用,各版本的区别总结
  8. HttpUrlConnection java.net.SocketException: Software caused connection abort: recv failed
  9. Codeforces Round #364 (Div. 2) Cells Not Under Attack
  10. 实例学习Bloom Filter
  11. MoneyUtil
  12. POJ1265——Area(Pick定理+多边形面积)
  13. SVM原理(1)
  14. 查看Linux最近重启的时间
  15. Typora最常用快捷键
  16. 开源图像检索工具:Caliph&amp;Emir使用方法
  17. python matploblib学习笔记
  18. Spring之redisyi一主一从复制(非哨兵模式)
  19. Linux对文件内容基本操作(学习笔记七)
  20. 关于web api 中 日期格式问题解决方案

热门文章

  1. nginx 服务器重启命令,关闭 (转)
  2. Powerdesigner自定义DBMS(以derby数据库为例)
  3. phpcms下载下来的程序刚安装就报错了
  4. upc.2219: A^X mod P(打表 &amp;&amp; 超越快速幂(in some ways))
  5. Linux大神必备-文本编辑器
  6. [codeforces 260]B. Ancient Prophesy
  7. 试试markdown
  8. HDU 5044(2014 ACM-ICPC上海网络赛)
  9. Android 相机对焦模式
  10. Android measure和layout的一点理解