#1520. 平衡灯带

    ID: 1520 传统题 文件IO:balance 1000ms 256MiB 尝试: 34 已通过: 7 难度: 普及 上传者: 标签>小学组基础算法前缀和哈希表合肥市经开区区赛

平衡灯带

本题需要文件读写

文件 IO 为:输入文件 balance.in,输出文件 balance.out。请使用上述文件名读入和输出。

问题描述

一条灯带用字符串 ss 记录,两种彩灯分别用 l 和 r 表示。如果一段连续灯带中两种字符都至少出现一次,并且出现次数相同,则称为平衡区间。

请计算最长平衡区间的长度。若不存在平衡区间,则输出 00。

输入格式

从文件 balance.in 中读入数据。

第一行输入一个整数 nn,表示字符串长度。

第二行输入一个长度为 nn 的字符串 ss。

输出格式

输出到文件 balance.out 中。

输出一行一个整数,表示最长平衡区间的长度。

样例输入 1

10
lllrrlrlll

样例输出 1

6

评测数据规模

  • 测试点 1∼21\sim2:n≤10n\le10;
  • 测试点 33:字符串只包含一种字符;
  • 测试点 4∼84\sim8:n≤103n\le10^3;
  • 测试点 9∼209\sim20:无额外限制;
  • 对于所有数据,1≤n≤2×1061\le n\le2\times10^6,ss 仅由 l、r 组成。