CF1912L.LOL Lovers

传统题 时间 2000 ms 内存 256 MiB 3 尝试 1 已通过 1 标签

LOL Lovers

题目描述

nn 个食物依次排成一行放在一张长桌上。每个食物要么是一个面包(用大写字母 'L' 表示,ASCII 码为 76),要么是一个洋葱(用大写字母 'O' 表示,ASCII 码为 79)。桌上至少有一个面包和至少一个洋葱。

你和你的朋友想要分这些食物:你将取这个序列的一个前缀(即最左边的若干个物品),你的朋友取剩下的部分。但有以下几个限制:

  1. 每个人至少要有一个物品。
  2. 你拥有的面包数量与朋友拥有的面包数量必须不同。
  3. 你拥有的洋葱数量与朋友拥有的洋葱数量必须不同。

请找出任意一种满足条件的分法,并输出你拿的物品数量。如果无解,输出 1-1

输入格式

第一行包含一个整数 nn2n2002 \le n \le 200),表示桌上的食物数量。
第二行包含一个长度为 nn 的字符串,由字母 'L' 和 'O' 组成。第 ii 个字符表示第 ii 个食物的类型:'L' 表示面包,'O' 表示洋葱。保证该字符串中至少有一个 'L' 和至少有一个 'O'。

输出格式

输出一个整数 kk,表示如果你取最左边 kk 个物品,你的朋友取剩下的 nkn-k 个物品,且每个人至少有一个物品,你拥有的面包数与朋友拥有的面包数不同,你拥有的洋葱数与朋友拥有的洋葱数也不同。如果有多种答案,输出任意一个。如果无解,输出 1-1

说明/提示

在第一个样例中,无论如何分割,左边和右边部分都各有一个面包。

在第二个样例中,可以分成 'L' 和 'O',这两部分中面包数不同(1 和 0),洋葱数也不同(0 和 1)。

在第三个样例中,1、2 或 3 都是正确答案。

由 ChatGPT 4.1 翻译

样例

3
LOL
-1
2
LO
1
4
LLLO
1
4
OLOL
-1
10
LLOOOOLLLO
5

在线编程 IDE

建议全屏模式获得最佳体验