CF1996C.Sort

普及-

通过率:0%

AC君温馨提醒

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

题目描述

给定两个长度为 nn 的字符串 aa 和 bb。接下来你需要(被迫)回答 qq 个询问。

对于每个询问,给定一个区间 [l,r][l, r]。每次操作,你可以选择一个整数 ii(l≤i≤rl \leq i \leq r),并将 aia_i 赋值为任意你想要的字符。请输出你最少需要进行多少次操作,使得 sorted(a[l..r])=sorted(b[l..r])\texttt{sorted(a[l..r])} = \texttt{sorted(b[l..r])}。你在某个询问中对 aa 的操作不会影响其他询问。

对于任意字符串 cc,sorted(c[l..r])\texttt{sorted(c[l..r])} 表示将子串 cl,cl+1,…,crc_l, c_{l+1}, \ldots, c_r 按字典序排序后的结果。

输入格式

第一行包含一个整数 tt(1≤t≤10001 \leq t \leq 1000),表示测试用例的数量。

每个测试用例的第一行包含两个整数 nn 和 qq(1≤n,q≤2⋅1051 \leq n, q \leq 2 \cdot 10^5),分别表示字符串的长度和询问的数量。

接下来一行包含长度为 nn 的字符串 aa。保证 aa 只包含小写拉丁字母。

接下来一行包含长度为 nn 的字符串 bb。保证 bb 只包含小写拉丁字母。

接下来的 qq 行,每行包含两个整数 ll 和 rr(1≤l≤r≤n1 \leq l \leq r \leq n),表示一次询问的区间。

保证所有测试用例中 nn 和 qq 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

对于每个询问,输出一个整数,表示你需要进行的最少操作次数。每个答案占一行。

输入输出样例

  • 输入#1

    3
    5 3
    abcde
    edcba
    1 5
    1 4
    3 3
    4 2
    zzde
    azbe
    1 3
    1 4
    6 3
    uwuwuw
    wuwuwu
    2 4
    1 3
    1 6

    输出#1

    0
    1
    0
    2
    2
    1
    1
    0

说明/提示

对于第一个询问,$\texttt{sorted(a[1..5])} = $ abcde,$\texttt{sorted(b[1..5])} = $ abcde,所以不需要进行任何操作。

对于第二个询问,你需要将 a1a_1 赋值为 e。此时,$\texttt{sorted(a[1..4])} = \texttt{sorted(b[1..4])} = $ bcde。

由 ChatGPT 4.1 翻译

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

首页