AT_agc055_a.[AGC055A] ABC Identity
普及+/提高
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个长度为 3N 的字符串 S,其中 S 恰好包含 N 个 A、N 个 B 和 N 个 C。
我们称一个由 A、B、C 组成的字符串 T 是好字符串,当且仅当满足以下条件:
- T 的长度能被 3 整除,记为 3K。
- T1=T2=…=TK。
- TK+1=TK+2=…=T2K。
- T2K+1=T2K+2=…=T3K。
- 字符 T1、TK+1、T2K+1 互不相同。
例如,ABC、BBAACC、AAACCCBBB 都是好字符串。
请你找到一种方法,将 S 分解为不超过 6 个(不要求连续)的子序列,使得每个子序列都是好字符串。
在本题的限制下,必定存在这样的分解方法。
输入格式
输入从标准输入读入,格式如下:
N S
输出格式
请输出一个长度为 3N 的、仅包含 1 到 6 的数字的字符串。对于每个 1≤i≤6,将 S 中对应输出为 i 的字符按顺序取出,组成的子序列应为好字符串。若有多种答案,输出任意一种均可。
输入输出样例
输入#1
2 ABCCBA
输出#1
111222
输入#2
4 AABCBCAACBCB
输出#2
111211241244
说明/提示
限制
- 1≤N≤2⋅105
- 字符串 S 恰好包含 N 个
A、N 个B、N 个C。
样例解释 1
S 被分为子序列 ABC 和 CBA,它们都是好字符串。
样例解释 2
输出为 1 的位置对应的子序列为 AABBCC,输出为 2 的位置对应的子序列为 CAB,输出为 4 的位置对应的子序列为 ACB,它们都是好字符串。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?