#P1432. 分类网络

    ID: 433 传统题 1000ms 256MiB 尝试: 0 已通过: 0 难度: (无) 上传者: 标签>普及+/提高前缀和线性代数矩阵乘法

分类网络

分类网络

题目描述

Orange设计了一个简单的分类网络,这个网络用于分类信息。网络可以看成是一个由 mm 层分类状态机构成的一个集合体,其中每层状态机都接受一个 nn 元一维向量,并且输出一个相同大小的向量。状态机构成一个前向传播网络,即第 ii 层的输出会作为第 i+1i+1 层的输入。其中,Orange在每层网络中都会对信息进行一次交换,具体为交换输入向量的任意两个元。

例如,假设对于一个 n=5n=5 的向量分类状态机,其分类参数为 (1,3)(1, 3),我们输入一个5维向量 A=(a,b,c,d,e)T\vec{A}=(\underline a,b,\underline c,d,e)^T,则他会交换 A1\vec{A_1}A3\vec{A_3},输出A=(c,b,a,d,e)T\vec{A'}=(\underline c,b,\underline a,d,e)^T。事实上,即交换了第一个位置和第三个位置的元素。

现在,Orange要分类数据,共询问 qq 次,每次会给你输入一个 nn 元的向量 A\vec{A},并且给你分类网络的入口层 ll 和出口层 rr,你需要输出 A\vec{A} 经过 lrl \sim r 层分类后,最终输出的向量 A\vec{A'}

输入格式

输入第一行为 3 个整数 n,m,qn,m,q,表示向量大小,分类网络层数与询问次数。 接下来 mm 行,每行包含两个整数 u,vu,v,表示第 ii 层分类状态机的参数。 对于每次询问,输入 22 行,第一行为两个整数 l,rl,r 表示神经网络的入口层 ll 和出口层 rr,第二行为 nn 个整数,表示输入的待分类向量 A\vec A

数据范围

2n102 \le n \le 10 1Ai1001 \le \vec{A_i} \le 100 1m,q1051 \le m,q \le 10^5 1lrn1 \le l \le r \le n

输出格式

对于每次询问,输出 nn 个整数,占一行,表示答案。

样例 #1

样例输入 #1

5 5 2
2 3
4 5
1 5
3 4
2 3
3 5
1 2 3 4 5
1 2
1 2 3 4 5

样例输出 #1

5 4 2 3 1
1 3 2 5 4

提示

样例解释

当输入向量为 A=(1,2,3,4,5)T\vec A = (1,2,3,4,5)^T 时: 经过第3层分类状态机,输出为 (5,2,3,4,1)(5,2,3,4,1),即交换 A1A_1A5A_5。 经过第4层分类状态机,输出为 (5,2,4,3,1)(5,2,4,3,1),即交换 A3A_3A4A_4。 经过第5层分类状态机,输出为 (5,4,2,3,1)(5,4,2,3,1),即交换 A2A_2A3A_3。 因此最后输出结果为 A=(5,4,2,3,1)T\vec A'= (5,4,2,3,1)^T