luogu#P8145. [JRKSJ R4] kth

    ID: 12141 远端评测题 2000ms 256MiB 尝试: 22 已通过: 1 难度: 6 上传者: 标签>动态规划,dp2022洛谷原创动态规划优化

[JRKSJ R4] kth

题目背景

时刻记住自己是人类,不是动物。

在吃玉米番茄炖山羊肉之前,你需要回答一个问题。

题目描述

给定 n,mn,m,称一个“合法”的整数序列为(设该序列为 ss):

  • ss 长度为 mm
  • i[1,m],si[1,n]\forall i\in[1,m],s_i\in[1,n]
  • i[2,m],sisi1=1\forall i\in[2,m],|s_i-s_{i-1}|=1

给定一个 [1,n][1,n] 的排列 pp,并定义一个整数序列 ss 的“对应序列” ss'ss' 的长度和 ss 相同;设其长度为 ll,那么 i[1,l],si=psi\forall i\in [1,l],s'_i=p_{s_i}

再给定 kk,求所有不同的合法的整数序列的对应序列中,字典序第 kk 小的对应序列中所有元素的和对 2322^{32} 取模的值。

若不存在第 kk 小的对应序列,输出 1-1

输入格式

第一行三个整数 n,m,kn,m,k
第二行 nn 个整数表示 pp

输出格式

一个整数,表示答案。

10 6 3
5 7 4 3 6 2 10 8 9 1
38
2 5 2
1 2
8
2 114514 1
2 1
171771
3 1000000000000000000 3
2 1 3
2065039361

提示

本题输入文件较大,请使用恰当的读入方式。

样例解释

对于样例 11,所有不同的合法的整数序列的对应序列中,字典序前三小的分别是:

{1,9,1,9,1,9}\{1,9,1,9,1,9\} {1,9,1,9,8,9}\{1,9,1,9,8,9\} {1,9,1,9,8,10}\{1,9,1,9,8,10\}

所以答案为 1+9+1+9+8+10=381+9+1+9+8+10=38

对于样例 22,所有不同的合法的整数序列的对应序列中,字典序前二小的分别是:

{1,2,1,2,1}\{1,2,1,2,1\} {2,1,2,1,2}\{2,1,2,1,2\}

所以答案为 2+1+2+1+2=82+1+2+1+2=8

数据规模

Subtask\text{Subtask} nn\le mm\le kk\le 分值
11 2020 1010 101810^{18} 55
22 7070 1515
33 100100 300300 2020
44 10410^4 10410^4 1515
55 101810^{18} 1010
66 10610^6 11 55
77 2×1072\times10^7 101810^{18} 3030

对于 100%100\% 的数据,1n2×1071\le n\le 2\times10^72m10182\le m\le 10^{18}1k10181\le k\le 10^{18}

特殊计分方式

本题开启子任务依赖,具体如下:

  • 对于子任务 i{1,6}i\in\{1,6\},您只需答对子任务 ii 即可获得子任务 ii 的分数。
  • 对于子任务 i{2,3,4,5,7}i\in\{2,3,4,5,7\},您需要答对所有 j[1,i]j\in[1,i] 的子任务 jj 才能获得子任务 ii 的分数。