AT_arc170_a.[ARC170A] Yet Another AB Problem

普及-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

给定两个只包含 A 和 B 的长度为 NN 的字符串 SS 和 TT。SS 的从左到右第 ii 个字符记作 SiS_i。

你可以任意次数(包括 00 次)重复以下操作:

  • 选择满足 1≤i<j≤N1 \leq i < j \leq N 的整数 i,ji, j,将 SiS_i 替换为 A,将 SjS_j 替换为 B。

请判断是否可以通过若干次操作使 SS 变为 TT,如果可以,求出所需的最小操作次数。

输入格式

输入以以下格式从标准输入读入:

NN SS TT

输出格式

如果无法将 SS 变为 TT,输出 -1。

如果可以,将 SS 变为 TT 的最小操作次数输出。

输入输出样例

  • 输入#1

    5
    BAABA
    AABAB

    输出#1

    2
  • 输入#2

    2
    AB
    BA

    输出#2

    -1

说明/提示

限制条件

  • 2≤N≤2×1052 \leq N \leq 2 \times 10^5
  • S,TS,T 均为只包含 A 和 B 的长度为 NN 的字符串
  • 输入的所有数值均为整数

样例解释 1

第一次操作选择 i=1,j=3i=1, j=3,SS 变为 AABBA。接着选择 i=4,j=5i=4, j=5,SS 变为 AABAB。因此,SS 可以通过 22 次操作变为 TT,且这是最少的操作次数,所以答案为 22。

样例解释 2

无论进行多少次操作,都无法将 SS 变为 TT。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页