AT_arc158_f.[ARC158F] Random Radix Sort

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

对于非负整数 x, kx,\ k,xx 的 10k10^k 位是指 ⌊ x10k⌋\bigl\lfloor\ \frac{x}{10^k}\bigr\rfloor 除以 1010 的余数。例如,123123 的 10010^0、10110^1、10210^2、10310^3 位分别为 3, 2, 1, 03,\ 2,\ 1,\ 0。

给定正整数 N, M, KN,\ M,\ K 以及非负整数序列 A=(A1, …, AN)A = (A_1,\ \ldots,\ A_N),B=(B1, …, BN)B = (B_1,\ \ldots,\ B_N)。

我们考虑通过以下步骤对 AA 进行重排:

  • 重复 MM 次以下操作:
    • 选择一个整数 kk,满足 0≤k≤K−10 \leq k \leq K-1。
    • 然后,对 AA 按照 10k10^k 位进行稳定排序。也就是说,对于 d=0,1,…,9d=0,1,\ldots,9,定义 A(d)A^{(d)} 为 AA 中 10k10^k 位等于 dd 的所有元素组成的子序列,然后将 A(0), A(1), …, A(9)A^{(0)},\ A^{(1)},\ \ldots,\ A^{(9)} 按顺序连接起来,替换 AA。

这样的操作共有 KMK^M 种可能。请计算,经过这些操作后,AA 恰好变为 BB 的方案数,并对 998244353998244353 取模。

输入格式

输入通过标准输入给出,格式如下:

NN MM KK A1A_1 …\ldots ANA_N B1B_1 …\ldots BNB_N

输出格式

输出使得 AA 变为 BB 的操作方案数,对 998244353998244353 取模。

输入输出样例

  • 输入#1

    3 2 3
    74 42 54
    42 54 74

    输出#1

    5
  • 输入#2

    2 1 1
    2 3
    3 2

    输出#2

    0
  • 输入#3

    5 100 4
    0 12 34 56 78
    0 12 34 56 78

    输出#3

    982924732

说明/提示

限制条件

  • 1≤N≤2×1051 \leq N \leq 2 \times 10^5
  • 1≤M≤1091 \leq M \leq 10^9
  • 1≤K≤181 \leq K \leq 18
  • 0≤Ai<10K0 \leq A_i < 10^K
  • 0≤Bi<10K0 \leq B_i < 10^K
  • AA 和 BB 作为多重集是相同的。也就是说,对于任意整数 xx,xx 在 AA 中出现的次数等于其在 BB 中出现的次数。

样例解释 1

第 11 次选择的 kk 记为 k1k_1,第 22 次选择的 kk 记为 k2k_2。例如,当 k1=0, k2=1k_1 = 0,\ k_2 = 1 时,AA 的变化如下:

  • 先对 10k1=10010^{k_1} = 10^0 位进行稳定排序,AA 变为 (42,74,54)(42,74,54)。
  • 再对 10k2=10110^{k_2} = 10^1 位进行稳定排序,AA 变为 (42,54,74)(42,54,74)。

所有操作及其结果如下:

  • (k1,k2)=(0,0)(k_1, k_2) = (0,0):A=(42,74,54)A = (42,74,54)。
  • (k1,k2)=(0,1)(k_1, k_2) = (0,1):A=(42,54,74)A = (42,54,74)。
  • (k1,k2)=(0,2)(k_1, k_2) = (0,2):A=(42,74,54)A = (42,74,54)。
  • (k1,k2)=(1,0)(k_1, k_2) = (1,0):A=(42,54,74)A = (42,54,74)。
  • (k1,k2)=(1,1)(k_1, k_2) = (1,1):A=(42,54,74)A = (42,54,74)。
  • (k1,k2)=(1,2)(k_1, k_2) = (1,2):A=(42,54,74)A = (42,54,74)。
  • (k1,k2)=(2,0)(k_1, k_2) = (2,0):A=(42,74,54)A = (42,74,54)。
  • (k1,k2)=(2,1)(k_1, k_2) = (2,1):A=(42,54,74)A = (42,54,74)。
  • (k1,k2)=(2,2)(k_1, k_2) = (2,2):A=(74,42,54)A = (74,42,54)。

样例解释 2

不存在满足条件的操作方案。

样例解释 3

所有 41004^{100} 种操作方案都满足条件。

由 ChatGPT 4.1 翻译

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

首页