1、POJ 3320

2、链接:http://poj.org/problem?id=3320

3、总结:尺取法,Hash,map标记

  看书复习,p页书,一页有一个知识点,连续看求最少多少页看完所有知识点

  必须说,STL够屌。。

#include<iostream>
#include<cstring>
#include<cmath>
#include<queue>
#include<algorithm>
#include<cstdio>
#include<map>
using namespace std;
#define LL long long
#define INF 0x3f3f3f3f
const int N=;
int p,a[N];
map<int,int>n,x; int main()
{
while(~scanf("%d",&p))
{
for(int i=;i<=p;i++)
{
scanf("%d",&a[i]);
n[a[i]]++;
}
int s=n.size(); //记录总类别 int l=,r=,ans=INF;
while(true)
{
while((r<=p)&&(x.size()<s)){ //尺取法,要满足范围要求,否则右端点移动
x[a[r++]]++;
}
if(x.size()<s)break;
ans=min(ans,r-l);
x[a[l++]]--;
if(x[a[l-]]<=)x.erase(a[l-]); //关健点,在范围内这个类别数<=0,就删去 }
printf("%d\n",ans);
} return ;
}

POJ 3320 尺取法,Hash,map标记的更多相关文章

  1. POJ 3320 (尺取法+Hash)

    题目链接: http://poj.org/problem?id=3320 题目大意:一本书有P页,每页有个知识点,知识点可以重复.问至少连续读几页,使得覆盖全部知识点. 解题思路: 知识点是有重复的, ...

  2. POJ 3320 尺取法(基础题)

    Jessica's Reading Problem Description Jessica's a very lovely girl wooed by lots of boys. Recently s ...

  3. poj 3320(尺取法)

    传送门:Problem 3320 参考资料: [1]:挑战程序设计竞赛 题意: 一本书有 P 页,每页都有个知识点a[i],知识点可能重复,求包含所有知识点的最少的页数. 题解: 相关说明: 设以a[ ...

  4. A - Jessica's Reading Problem POJ - 3320 尺取

    A - Jessica's Reading Problem POJ - 3320 Jessica's a very lovely girl wooed by lots of boys. Recentl ...

  5. poj 2100(尺取法)

    Graveyard Design Time Limit: 10000MS   Memory Limit: 64000K Total Submissions: 6107   Accepted: 1444 ...

  6. POJ 2566 尺取法(进阶题)

    Bound Found Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 4297   Accepted: 1351   Spe ...

  7. poj 3320 jessica's Reading PJroblem 尺取法 -map和set的使用

    jessica's Reading PJroblem Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9134   Accep ...

  8. POJ 3061 Subsequence 尺取法 POJ 3320 Jessica's Reading Problem map+set+尺取法

    Subsequence Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 13955   Accepted: 5896 Desc ...

  9. POJ 3320 Jessica's Reading Problem 尺取法/map

    Jessica's Reading Problem Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7467   Accept ...

随机推荐

  1. [LeetCode] Add Two Numbers

    You are given two linked lists representing two non-negative numbers. The digits are stored in rever ...

  2. MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法

    在MySQL应用时,经常要使用这两个函数TIMESTAMPDIFF和TIMESTAMPADD. 一,TIMESTAMPDIFF 语法: TIMESTAMPDIFF(interval,datetime_ ...

  3. go sample - mongodb

    简单的mongodb 操作 package mainimport ( "fmt" "gopkg.in/mgo.v2" "gopkg.in/mgo.v2 ...

  4. hdu 4034 2011成都赛区网络赛 逆向floyd **

    给出一个最短路邻接矩阵,求出构图的最小边数 正常的floyd的k放在最外面是为了防止i到j的距离被提前确定,而逆向的floyd,i到j的距离已经确定,所以需要在i到j之间枚举k,注意需要break,否 ...

  5. hdu 4010 动态树 @

    kuangbin模板题,看起来十分高大上 /* *********************************************** Author :kuangbin Created Tim ...

  6. linux 用户之间的切换

    从root用户切换到普通用户fxm, 使用如下命令:su - fxm 从普通用户切换到root用户,使用如下命令:su - 或者 su, root可以省略不写.

  7. XML 文件解析

    1.XML文件 <Data> <Movie id="1"> <title>good lucky to you</title> < ...

  8. Activity之间传递数据的方式及常见问题总结

    Activity之间传递数据一般通过以下几种方式实现: 1. 通过intent传递数据 2. 通过Application 3. 使用单例 4. 静态成员变量.(可以考虑 WeakReferences) ...

  9. android中随着ScrollView的滑动,titleBar状态的改变

    今天项目有一个需求,,类是于QQ空间里面的一个功能,于是就研究了一下,嗯,说这么多,可能还有人不知道指的是那个,直接上效果图.见谅,不会弄动态图:   对,就是这种效果,我研究了一下,思路如下: 1. ...

  10. express-7 请求和响应对象(2)

    获取更多信息 如果正在寻找某些功能,首先要查看Express的API文档 如果需要的信息没在文档中,有时就不得不深入研究Express源码; 下面是Express源码的路径说明 lib/applica ...