CF1108D Diverse Garland

    • 88通过
    • 125提交
  • 题目来源 CodeForces 1108D
  • 评测方式 RemoteJudge
  • 标签
  • 难度 提高+/省选-
  • 时空限制 1000ms / 256MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 体验新版界面

    最新讨论 显示

    推荐的相关题目 显示

    题意翻译

    题目描述:

    给一串字符,只有RGB。问如果要让相邻$2$个字符都不同,最少要改几个?

    输入格式:

    第一行:字符串的长度$n$。$(1\leq n\leq2*10^5)$

    第二行:$n$个字符,是给的字符串。

    输出格式:

    第一行:最少要改动几个字符。

    第二行:改后的字符串。(注:有$spj$)

    题目描述

    You have a garland consisting of $ n $ lamps. Each lamp is colored red, green or blue. The color of the $ i $ -th lamp is $ s_i $ ('R', 'G' and 'B' — colors of lamps in the garland).

    You have to recolor some lamps in this garland (recoloring a lamp means changing its initial color to another) in such a way that the obtained garland is diverse.

    A garland is called diverse if any two adjacent (consecutive) lamps (i. e. such lamps that the distance between their positions is $ 1 $ ) have distinct colors.

    In other words, if the obtained garland is $ t $ then for each $ i $ from $ 1 $ to $ n-1 $ the condition $ t_i \ne t_{i + 1} $ should be satisfied.

    Among all ways to recolor the initial garland to make it diverse you have to choose one with the minimum number of recolored lamps. If there are multiple optimal solutions, print any of them.

    输入输出格式

    输入格式:

    The first line of the input contains one integer $ n $ ( $ 1 \le n \le 2 \cdot 10^5 $ ) — the number of lamps.

    The second line of the input contains the string $ s $ consisting of $ n $ characters 'R', 'G' and 'B' — colors of lamps in the garland.

    输出格式:

    In the first line of the output print one integer $ r $ — the minimum number of recolors needed to obtain a diverse garland from the given one.

    In the second line of the output print one string $ t $ of length $ n $ — a diverse garland obtained from the initial one with minimum number of recolors. If there are multiple optimal solutions, print any of them.

    输入输出样例

    输入样例#1: 复制
    9
    RBGRRBRGG
    
    输出样例#1: 复制
    2
    RBGRGBRGR
    
    输入样例#2: 复制
    8
    BBBGBRRR
    
    输出样例#2: 复制
    2
    BRBGBRGR
    
    输入样例#3: 复制
    13
    BBRRRRGGGGGRR
    
    输出样例#3: 复制
    6
    BGRBRBGBGBGRG
    
    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。