博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[USACO13JAN] Cow Lineup (单调队列,尺取法)
阅读量:5316 次
发布时间:2019-06-14

本文共 675 字,大约阅读时间需要 2 分钟。

Solution

尺取法板子,算是复习一波.

题中说最多删除 \(k\) 种,那么其实就是找一个颜色种类最多为 \(k+1\) 的区间;
统计一下其中最多的颜色出现次数.
然后直接尺取法,然后每次对于 \(col[r]\) 进行统计,时间复杂度 \(O(n)\) .

Code

#include
using namespace std;const int maxn=100008;int ans;int n,k,col[maxn];map
js;int main(){ scanf("%d%d",&n,&k); for(int i=1;i<=n;i++) scanf("%d",&col[i]); int now=0,l=1,r=0; while(r<=n) { r++; if(!js[col[r]])now++; js[col[r]]++; while(now==k+2) { js[col[l]]--; if(!js[col[l]])now--; l++; } ans=max(ans,js[col[r]]); } cout<
<

转载于:https://www.cnblogs.com/Kv-Stalin/p/9702870.html

你可能感兴趣的文章
jquery-jqzoom 插件 用例
查看>>
查看oracle数据库的连接数以及用户
查看>>
三.野指针和free
查看>>
简单【用户输入验证】
查看>>
python tkinter GUI绘制,以及点击更新显示图片
查看>>
20130330java基础学习笔记-语句_for循环嵌套练习2
查看>>
Spring面试题
查看>>
C语言栈的实现
查看>>
TC SRM 593 DIV1 250
查看>>
SRM 628 DIV2
查看>>
2018-2019-2 20165314『网络对抗技术』Exp5:MSF基础应用
查看>>
SecureCRT的使用方法和技巧(详细使用教程)
查看>>
自建数据源(RSO2)、及数据源增强
查看>>
关于View控件中的Context选择
查看>>
2018icpc徐州OnlineA Hard to prepare
查看>>
使用命令创建数据库和表
查看>>
在16aspx.com上下了一个简单商品房销售系统源码,怎么修改它的默认登录名和密码...
查看>>
linux下Rtree的安装
查看>>
多米诺骨牌
查看>>
Linq 学习(1) Group & Join--网摘
查看>>