CF1912L.LOL Lovers
入门
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有 n 个食物依次排成一行放在一张长桌上。每个食物要么是一个面包(用大写字母 'L' 表示,ASCII 码为 76),要么是一个洋葱(用大写字母 'O' 表示,ASCII 码为 79)。桌上至少有一个面包和至少一个洋葱。
你和你的朋友想要分这些食物:你将取这个序列的一个前缀(即最左边的若干个物品),你的朋友取剩下的部分。但有以下几个限制:
- 每个人至少要有一个物品。
- 你拥有的面包数量与朋友拥有的面包数量必须不同。
- 你拥有的洋葱数量与朋友拥有的洋葱数量必须不同。
请找出任意一种满足条件的分法,并输出你拿的物品数量。如果无解,输出 −1。
输入格式
第一行包含一个整数 n(2≤n≤200),表示桌上的食物数量。
第二行包含一个长度为 n 的字符串,由字母 'L' 和 'O' 组成。第 i 个字符表示第 i 个食物的类型:'L' 表示面包,'O' 表示洋葱。保证该字符串中至少有一个 'L' 和至少有一个 'O'。
输出格式
输出一个整数 k,表示如果你取最左边 k 个物品,你的朋友取剩下的 n−k 个物品,且每个人至少有一个物品,你拥有的面包数与朋友拥有的面包数不同,你拥有的洋葱数与朋友拥有的洋葱数也不同。如果有多种答案,输出任意一个。如果无解,输出 −1。
输入输出样例
输入#1
3 LOL
输出#1
-1
输入#2
2 LO
输出#2
1
输入#3
4 LLLO
输出#3
1
输入#4
4 OLOL
输出#4
-1
输入#5
10 LLOOOOLLLO
输出#5
5
说明/提示
在第一个样例中,无论如何分割,左边和右边部分都各有一个面包。
在第二个样例中,可以分成 'L' 和 'O',这两部分中面包数不同(1 和 0),洋葱数也不同(0 和 1)。
在第三个样例中,1、2 或 3 都是正确答案。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?