`
tudusi
  • 浏览: 1085167 次
文章分类
社区版块
存档分类
最新评论

[ACM]编程珠玑

 
阅读更多

你有一条项链,它由 N 个随机排列的红、白和蓝色的珠子组成(3<=N<=350)。下面的例子展示了两条 N=29 时的项链:

             1 2                              1 2
           r b b r                           b r r b
          r         b                       b         b
         r           r                     b           r
        r             r                   w             r
       b               r                 w               w
      b                 b               r                 r
      b                 b               b                 b
      b                 b               r                 b
       r               r                 b               r
        b             r                   r             r
         b           r                     r           r
           r       r                         r       b
             r b r                            r r w
          Figure A                     Figure B
                        r red bead
                        b blue bead
                        w white bead
项链上的第一个和第二个珠子已经在图中标出了。

图 A 也可以用一个由 b 和 r 组成的字符串直接表示,b 代表蓝色而 r 代表红色,如下所示:brbrrrbbbrrrrrbrrbbrbbbbrrrrb。

假设你想从项链的某处将它截断拉直;接着从一端向另外一端数收集同颜色的珠子,直到碰到一个不同颜色的珠子为止;然后再从另外一端做同样的操作。(一端收集的珠子颜色可以不同于另一端的。)

请想办法找到一个截断项链的位置,能够让我们尽量多地收集到同色的珠子。

例子

如图 A 中的项链,从第 9 和第 10 个或者第 24 和 第 25 个珠子中间截断,则我们可以收集到 8 个珠子。

图 B 中的项链有白色的珠子,当遇到白色的珠子时,它既可以作为蓝色的珠子看待,也可以作为红色的珠子看待,由收集珠子时的需求决定。包含有白色珠子的项链则会由 r、b 和 w 字符组成的字符串来表示。

请编写一个程序计算从某条项链中能够收集到多少个珠子。

输入格式

第一行: N,项链上珠子的个数

第二行:一个字符串,长度为 N,由 r、b 和 w字符组成

输入样例

29 wwwbbrwrbrbrrbrbrwrwwrbwrwrrb

输出格式

输出一行字符,它应该包含了计算出的结果。

输出样例

11
测试输入帮助,input (新窗口) 期待的输出帮助,expectedoutput (新窗口) 时间限制帮助,timelimit (新窗口) 内存限制帮助,memlimit (新窗口) 额外进程帮助,nproc (新窗口) 测试用例 1
以文本方式显示
  1. 29↵
  2. wwwbbrwrbrbrrbrbrwrwwrbwrwrrb↵
以文本方式显示
  1. 11↵
1秒 1024KB 0

废话少说,上程序:

提供几个测试例:
输入:
29
wwwbbrwrbrbrrbrbrwrwwrbwrwrrb
77
rwrwrwrwrwrwrwrwrwrwrwrwbwrwbwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwrwr
50
bbrrrbrrrrrrrrbrbbbrbrrbrrrrbbbrbrbbbbbrbrrrbbrbbb
17
wwwwwwwwwwwwwwwww
3
rrr
输出:
11
74
9
17
3

分享到:
评论

相关推荐

    编程珠玑(第2版)中文版pdf

    《编程珠玑》是由Jon Bentley所著的一本计算机程序设计的经典著作,它在计算机科学领域内具有非常高的声誉。这本书深入探讨了计算机程序设计中的诸多方面,尤其强调了程序设计过程中洞察力和创造力的重要性。 Jon ...

    编程珠玑(第二版)中文版.pdf

    《编程珠玑(第二版)》是计算机科学领域的经典之作,其作者是Jon Bentley。这本书是众多编程专家和学者推崇的作品,它围绕程序员在实际工作中遇到的一系列问题展开,讲述了一系列具体的编程实例和解决方案。 书籍...

    编程珠玑 第2版 kindle格式电子书

    编程珠玑 第2版 azw3格式电子书,适合kindle... Dobb's Joumal杂志的特约编辑,他的“编程珠玑”专栏多年来一直是顶级学术杂志Communications of the ACM最风行的特色专栏之一,而本书正是建立在这些专栏的基础之上。

    编程珠玑 第2版【清晰有目录】.pdf

    多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位列前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇...

    编程珠玑(第2版•修订版),中文完整扫描版

    多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇...

    [精品]编程珠玑(第2版•修订版).epub

    多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇...

    《编程珠玑 第2版》高清带书签

    多年以来,当程序员们推选出*心爱的计算机图书时,《编程珠玑》总是位于前列。正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力,从磨砺程序员的实际问题中凝结出一篇篇...

    编程珠玑(programming pearls) 作者Jon Bentley communications of the ACM 文章合集!!!

    编程珠玑(programming pearls)最早刊登在communications of the ACM 杂志上,有个连载的专栏。文章从1983年到1987年,一共30篇。 目前的书籍编程珠玑&gt;&gt;就是作者在上述文章的基础上修改而成的。 然而,无论你是否...

    计算机学科经典书籍—编程珠玑

    他的专栏“编程珠玑”在《Communications of the ACM》杂志上广受欢迎。 - **读者评价**: 大多数读者认为《编程珠玑》是一本极其有价值的书籍,它不仅仅是一本技术指南,更是提升编程思维的重要工具。作者通过丰富的...

    中文第二版 编程珠玑

    书中的内容大多出自发表在《Communications of the ACM》上的Programming Pearls专题,它们被整理、修订,并于1986年作为本书第一版出版。本书对第一版十三章中的十二章做了大量的编辑更动,并加入了三个新的主题。

    编程珠玑之中文第二版

    众多大师级程序员强力推崇的书籍,里面的内容大都出自ACM。本书是为程序员所写。

    北大acm人必备工具包

    1. **函数库**:函数库是ACM编程中的核心资源,它们提供了常见的算法实现,如快速排序、归并排序、二分查找、动态规划模板等。这些预编译好的函数可以帮助参赛者节省大量编写基础算法的时间,集中精力解决复杂问题。...

    北大acm经典题目解题报告

    2. **算法书籍**:《算法导论》、《编程珠玑》等经典著作。 3. **ACM竞赛经验分享**:前参赛者的心得体会,对新手有很大启发。 总的来说,这份【北大ACM经典题目解题报告】是参赛者提升算法能力、拓宽编程思路、...

    ACM入门资料(大学内部)

    2. **经典书籍**:《算法导论》、《编程珠玑》、《算法竞赛入门经典》等,都是深入理解算法的好书。 3. **ACM竞赛题库**:历年的ACM竞赛题目,可以从中了解竞赛的难度和题型。 4. **团队训练**:与其他同学组成...

    经典编程书单

    多年以来,当程序员们推选出最心爱的计算机图书时,《编程珠玑》总是位列前列。 正如自然界里珍珠出自细沙对牡蛎的磨砺,计算机科学大师Jon Bentley以其独有的洞察力和创造力, 从磨砺程序员的实际问题中凝结出一篇...

    ACM南桥竞赛学习资料包

    3. 算法书籍:如《算法导论》、《编程珠玑》等经典著作,深入理解算法原理。 4. 在线编程平台:如LeetCode、HackerRank等,提供模拟比赛环境,可以实战练习。 5. 心得分享:了解参赛者的心得体会,能帮助避免常见...

    acm推荐书籍与培训计划

    2. 《编程珠玑》:Jon Bentley的作品,通过实际问题引导读者深入理解算法和数据结构,同时注重编程实践。 3. 《算法竞赛入门经典》:刘汝佳的书,专为ACM/ICPC竞赛编写,包含大量实战题目和解析。 4. 《数据结构与...

    acm人必备

    10. **学习资源**:利用教材、博客、论坛等资源持续学习,如《算法导论》、《编程珠玑》、《算法竞赛入门经典》等。 综上所述,“ACM人必备”的知识体系不仅包括扎实的算法基础和编程技能,还包含了数学、团队协作...

    programming pearls 文章合集

    编程珠玑 作者20年前(从1983年到1987年)在communications of the ACM 上连载发表的30篇文章,比《编程珠玑》书写的要详细。很启发人的。

Global site tag (gtag.js) - Google Analytics