转载请注明出处:http://blog.csdn.net/u012860063

题目链接:

pid=2369">http://acm.hdu.edu.cn/showproblem.php?

pid=2369

代码例如以下:

#include <cstdio>
#include <cstring>
char s[1100047];
int hash[247];
int main()
{
__int64 n;
while(~scanf("%I64d",&n) && n)
{
getchar();
gets(s);
__int64 len = strlen(s);
memset(hash,0,sizeof(hash));
__int64 i, star = 0, ans = 0, diff = 0;
for(i = 0; i < len; i++)
{
++hash[s[i]];//映射值+1
if(hash[s[i]] == 1)//假设是第一次出现
{
diff++;//不同字母数+1
if(diff > n)//假设超过n个不同字母
{
while(--hash[s[star++]] > 0);//起点向右挪动 直到消去一个字母
diff--;//不同字母数返回正常取值
}
}
int LEN = i-star+1;//获得这个字符串长度
ans = ans > LEN?ans:LEN;//保存最大
}
printf("%I64d\n",ans);
}
return 0;
}

hdu2369 Broken Keyboard(类似dfs)的更多相关文章

  1. N - Broken Keyboard (a.k.a. Beiju Text)(DFS,链表)

    N - Broken Keyboard (a.k.a. Beiju Text) Time Limit:1000MS     Memory Limit:0KB     64bit IO Format:% ...

  2. UVa 11998 Broken Keyboard (数组模拟链表问题)

    题目链接: 传送门 Broken Keyboard #include<bits/stdc++.h> using namespace std; char str[100010]; int m ...

  3. UVa 11988 Broken Keyboard(链表->数组实现)

    /*数组形式描述链表:链表不一定要用指针. 题目链接:UVa 11988 Broken Keyboard 题目大意: 小明没有开屏幕输入一个字符串,电脑键盘出现了问题会不定时的录入 home end ...

  4. 1084. Broken Keyboard (20)

    On a broken keyboard, some of the keys are worn out. So when you type some sentences, the characters ...

  5. B - Broken Keyboard (a.k.a. Beiju Text)

    Problem B Broken Keyboard (a.k.a. Beiju Text) You're typing a long text with a broken keyboard. Well ...

  6. uva - Broken Keyboard (a.k.a. Beiju Text)(链表)

    11988 - Broken Keyboard (a.k.a. Beiju Text) You’re typing a long text with a broken keyboard. Well i ...

  7. PAT1084:Broken Keyboard

    1084. Broken Keyboard (20) 时间限制 200 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue On a ...

  8. PAT 1084 Broken Keyboard

    1084 Broken Keyboard (20 分)   On a broken keyboard, some of the keys are worn out. So when you type ...

  9. A1084. Broken Keyboard

    On a broken keyboard, some of the keys are worn out. So when you type some sentences, the characters ...

随机推荐

  1. ios ios7 取消控制拉升

    //推断是否ios7 取消控制拉升 if ([[UIDevice currentDevice].systemVersion doubleValue] >= 7.0) { self.edgesFo ...

  2. [Django] Base class in the model layer

    In the model layer, the Model class is the base class while the ModelBase class is metaclass.

  3. CSS设计指南之浮动与清除

    原文:CSS设计指南之浮动与清除 浮动意思就是把元素从常规文档流中拿出来,浮动元素脱离了常规文档流之后,原来紧跟在其后的元素就会在空间允许的情况下,向上提升到与浮动元素平起平坐. 一.浮动 CSS设计 ...

  4. 返璞归真 asp.net mvc (5) - Action Filter, UpdateModel, ModelBinder, Ajax, Unit Test

    原文:返璞归真 asp.net mvc (5) - Action Filter, UpdateModel, ModelBinder, Ajax, Unit Test [索引页] [源码下载] 返璞归真 ...

  5. 解决visual studio空格变成很多点号的3种方法

    在用visual studio做网站时不知道按了什么快捷键,所有页面上的空格都变成了点号,就像下图那样. 要解决空格变点号的方法有两种:1.编辑->高级->查看空白2.Ctrl+E 然后按 ...

  6. 使用GDB在远程开发机上调试

    由于一些环境限制,很多学生很可能需要在开发机器上调试.但是,由于对计算机资源的开发限制.在本地的直接机的发展GDB环境配置问题已经成为,其实,我们可以利用这段时间GDB自带gdbserver工具将能够 ...

  7. mac eclipse svn subeclipse: Failed to load JavaHL Library.

    Failed to load JavaHL Library. These are the errors that were encountered: no libsvnjavahl-1 in java ...

  8. [Apache Spark源代码阅读]天堂之门——SparkContext解析

    略微了解Spark源代码的人应该都知道SparkContext,作为整个Project的程序入口,其重要性不言而喻,很多大牛也在源代码分析的文章中对其做了非常多相关的深入分析和解读.这里,结合自己前段 ...

  9. NYOJ 372 巧克力的

    巧克力 时间限制:4000 ms  |  内存限制:65535 KB 难度:2 描写叙述 布欧能够把人变成巧克力吃了来添加他的能量,也有可能降低. 如今布欧变了n*m个巧克力,并把巧克力排成一个n*m ...

  10. 2014年度辛星全然解读html第七节

    经过前面六节的学习,我们大致清楚了HTML教程中的基础内容,那么接下来我们開始继续向后推进,能够说,以下我们介绍一下HTML中的区块. ***************区块*************** ...