题目链接:Codeforces - Pencils and Boxes


显然可以dp,dp[i] 为前 i 个是否合法。

然后sort一下,然后枚举当前位置的时候,二分或者尺取找到最远的合法的位置。然后就找到了转移区间,只要转移区间有一个合法的,那么当前也是合法的。


AC代码:

#pragma GCC optimize("-Ofast","-funroll-all-loops")
#include<bits/stdc++.h>
//#define int long long
using namespace std;
const int N=5e5+10;
int n,k,d,a[N],dp[N],sum[N];
inline int ask(int l,int r){return sum[r]-sum[l-1];}
signed main(){cin>>n>>k>>d;for(int i=1;i<=n;i++)   scanf("%d",&a[i]);sort(a+1,a+1+n);for(int i=k;i<=n;i++){sum[i]=sum[i-1];if(a[i]-a[i-k+1]>d)    continue;int l=1,r=i-k+1;while(l<r){int mid=l+r>>1;if(a[i]-a[mid]<=d) r=mid;else l=mid+1;}if(l==1||ask(l-1,i-k)) dp[i]=1;sum[i]+=dp[i];}puts(dp[n]?"YES":"NO");return 0;
}

Codeforces - Pencils and Boxes相关推荐

  1. CodeForces 985 E Pencils and Boxes

    Pencils and Boxes 题意: n支铅笔,每只笔有一个颜色值, 无限个盒子, 如果一个盒子里面放笔的话, 就至少需要k支笔装在一起,并且一个盒子里面的笔的颜色值只差 不能大于 d.如果满足 ...

  2. CodeForces 985E Pencils and Boxes

    Description Mishka received a gift of multicolored pencils for his birthday! Unfortunately he lives ...

  3. codeforces contest 985E. Pencils and Boxes+思维

    类似指针的想法 E. Pencils and Boxes time limit per test 2 seconds memory limit per test 256 megabytes input ...

  4. CodeForces - 985E Pencils and Boxes

    可以证明的是,总是存在一种最优策略使得每个组内的权值都是连续的. 所以排完序一遍 two pointers就好啦. Discription Mishka received a gift of mult ...

  5. E. Pencils and Boxes codeforces(思维+dp)

    题目链接:E. Pencils and Boxes 题意: 给出n个数字,分组,每组大小>=k,并且同一组内任意两个数字大小不能超过d 思路: 先从小到大排序.然后dp.起点肯定是第一个数字,然 ...

  6. Codeforces 985 E - Pencils and Boxes

    E - Pencils and Boxes 思路: dp 先排个序,放进一个袋子里的显然是一段区间 定义状态:pos[i]表示小于等于i的可以作为(放进一个袋子里的)一段区间起点的离i最近的位置 显然 ...

  7. E. Pencils and Boxes(尺取dp)

    E. Pencils and Boxes(尺取&dp) 显然按val排序,然后考虑dp,显然转移的jjj随iii增加不会递减,接着考虑限制条件,显然i往右走,要是差值小于d,i递增, 因为有k ...

  8. 【CodeForces 1255E1 --- Send Boxes to Alice [Easy Version]】

    [CodeForces 1255E1 --- Send Boxes to Alice [Easy Version]] Description This is the easier version of ...

  9. cf 985E Pencils and Boxes

    一 原题 E. Pencils and Boxes time limit per test 2 seconds memory limit per test 256 megabytes input st ...

最新文章

  1. 面试大法——算法、Python、机器学习等笔试面经资源|干货收藏
  2. mysql5.6安装及实现双向备份
  3. LeetCode 7 反转整数
  4. 【转】QT中添加的资源文件qrc时的路径问题小结
  5. Express 工具库中的 Application 对象
  6. P4336 [SHOI2016]黑暗前的幻想乡
  7. java 类型转换 安全_JAVA 类型转换指令
  8. 求第k小的数(洛谷P1923题题解,Java/C++语言描述)
  9. 玩转 Numpy 的精选习题
  10. 优秀的程序员是这样的
  11. 四种大数据分析方法 ,大数据学习入门必须掌握!
  12. php加ajax,PHP – AJAX 与 PHP | 菜鸟教程
  13. python保存超大数据excel表格——大于65532
  14. 苹果 watchOS 3.2 首个测试版:剧场模式、SiriKit
  15. 行人属性识别:Grouping Attribute Recognition for Pedestrian with Joint Recurrent Learning
  16. C++设计模式23——访问者模式
  17. 为什么你应聘不上或试用期被开?
  18. github上三个不错的开源框架
  19. 测试工程师面试汇总【完美世界】
  20. 三个等号和两个等号的区别(“===”与“==”的区别)

热门文章

  1. 高校制作VR全景费用了解一下?
  2. 一场关于开源芯片生态之语言与工具链的讨论
  3. 华硕VIVO BOOK15s啃苹果之路
  4. numpy按照某列排序
  5. 区块链走向何方,或许从美国证劵史可以得到答案
  6. 压缩脚本linux shell
  7. 【在苹果电脑上如何安装win 7驱动】
  8. 电子设计数字钟,multisim仿真·
  9. BZOJ3926: [Zjoi20150]诸神眷顾的幻想乡
  10. 电厂/矿井UWB室内定位解决方案