n<=100000个数,求删掉K种相同的数之后最长的相同数区间长度。

原来是2指针裸题。两个指针,一个左边开始扫,一个右边找最长的区间,使得数字种数不超过K+1即可,然后统计答案。

统计答案时,如果枚举左端点就用左端点更新答案,枚举右端点就用右。因为这个WA了两次。

 1 #include<stdio.h>
 2 #include<string.h>
 3 #include<stdlib.h>
 4 //#include<math.h>
 5 #include<algorithm>
 6 #include<iostream>
 7 using namespace std;
 8
 9 int n,m;
10 #define maxn 100011
11 int a[maxn],li[maxn],cnt[maxn];
12 int main()
13 {
14     scanf("%d%d",&n,&m);
15     for (int i=1;i<=n;i++) scanf("%d",&a[i]),li[i]=a[i];
16     sort(li+1,li+1+n);for (int i=1;i<=n;i++) a[i]=lower_bound(li+1,li+1+n,a[i])-li;
17     int l=1,r=1,tot=0,ans=0;
18     memset(cnt,0,sizeof(cnt));
19     for (;l<=n;l++)
20     {
21         for (;r<=n;r++)
22         {
23             if (!cnt[a[r]]) tot++;
24             if (tot>m+1) {tot--;break;}
25             cnt[a[r]]++;
26         }
27         ans=max(ans,cnt[a[l]]);
28         cnt[a[l]]--;
29         if (!cnt[a[l]]) tot--;
30     }
31     printf("%d\n",ans);
32     return 0;
33 }

View Code

转载于:https://www.cnblogs.com/Blue233333/p/7608563.html

BZOJ3048: [Usaco2013 Jan]Cow Lineup相关推荐

  1. 【BZOJ3048】Cow lineup,贪心+队列维护(或二分答案)

    传送门(权限题) 题面: 3048: [Usaco2013 Jan]Cow Lineup Time Limit: 2 Sec Memory Limit: 128 MB Submit: 121 Solv ...

  2. BZOJ 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛【Floyd】

    1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time Limit: 5 Sec Memory Limit: 64 MB Description FJ的N(1 <= ...

  3. bzoj 3377: [Usaco2004 Open]The Cow Lineup 奶牛序列

    3377: [Usaco2004 Open]The Cow Lineup 奶牛序列 Time Limit: 10 Sec  Memory Limit: 128 MB Submit: 49  Solve ...

  4. bzoj 1612: [Usaco2008 Jan]Cow Contest奶牛的比赛(floyd)

    1612: [Usaco2008 Jan]Cow Contest奶牛的比赛 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1153  Solved: 7 ...

  5. bzoj 1636 bzoj 1699: [Usaco2007 Jan]Balanced Lineup排队(RMQ)

    1699: [Usaco2007 Jan]Balanced Lineup排队 Time Limit: 5 Sec  Memory Limit: 64 MB Submit: 1514  Solved:  ...

  6. 题解 洛谷 P3069 [USACO13JAN]牛的阵容Cow Lineup

    洛谷P3069[USACO13JAN]牛的阵容CowLineup\color{#00F}{洛谷\ P3069\ [USACO13JAN]牛的阵容Cow Lineup}洛谷 P3069 [USACO13 ...

  7. 洛谷 3029 [USACO11NOV]牛的阵容Cow Lineup

    https://www.luogu.org/problem/show?pid=3029 题目描述 Farmer John has hired a professional photographer t ...

  8. bzoj 1699: [Usaco2007 Jan]Balanced Lineup排队【st表||线段树】

    要求区间取min和max,可以用st表或线段树维护 st表 #include<iostream> #include<cstdio> using namespace std; c ...

  9. [USACO13JAN] Cow Lineup (单调队列,尺取法)

    题目链接 Solution 尺取法板子,算是复习一波. 题中说最多删除 \(k\) 种,那么其实就是找一个颜色种类最多为 \(k+1\) 的区间; 统计一下其中最多的颜色出现次数. 然后直接尺取法,然 ...

最新文章

  1. 管好统计信息,开启SQL优化之门
  2. esp8266单片机透传_ESP8266通过MQTT接入Home Assistant
  3. [翻译]Keeping your JavaScript out of the global scope
  4. java教程java自学_15必须阅读Java 8教程
  5. CC1101超低功耗无线模块在物联网能门锁中的应用
  6. 基于Wi-Fi的室内定位在美团总部的实践和应用(上)
  7. 客座编辑:刘克,男,博士,国家自然科学基金委员会信息科学部二处(计算机学科)处长。...
  8. MarkdownPad2添加目录(输出为HTML时可用)
  9. 网工界的TFBOYS——netmikotextfsmntc-templates快速入门
  10. 最佳牛围栏题解 二分答案
  11. 本人译著《Professional Xcode 3》现已翻译完毕
  12. python批量查询ip归属地_利用python实现批量查询ip地址归属地址
  13. 学子商城实训项目总结
  14. jzoj6152. 【GDOI2019Day2模拟2019.4.29】Endless (倍增维护并查集,平方串)
  15. validity.valueMissing无论写不写文本都为false
  16. Windows——插件:动态主题(轻量级 每日自动换壁纸)
  17. VS2019 测试使用libusb
  18. vue项目引入高德地图
  19. python培训浦东
  20. pandas指定从第一行读取正文数据

热门文章

  1. Gradle 修改 Maven 仓库地址(阿里镜像)
  2. 收回误删并清除了回收站的文档
  3. 【P2766】 最长不下降子序列问题
  4. Javascript编码规范,好的代码从书写规范开始,增强代码的可读性,可维护性,这是相当重要的!...
  5. theano 安装杂记
  6. MySQL外键与外键关系说明(简单易懂)
  7. 关于HOOK API Lib 0.1 For Delphi
  8. Plenty Of Tricks to Get Irradiance Caching Practical
  9. 人的一生,到底在追求甚么?...
  10. CAS Tomcat配置