Sunteți pe pagina 1din 2

The 2020 ICPC Vietnam Southern Provincial

Programming Contest
University of Science, VNU-HCM
October 25, 2020

Problem G
Exotic Convolution
Time Limit: 1 seconds
Memory Limit: 512 megabytes
You are given a binary three-dimensional array 𝑡[𝑛][3][3], where 𝑡[𝑖][𝑎][𝑏] = 𝑡[𝑖][𝑏][𝑎], and
two integers 𝑢 and 𝑣 where 0 ≤ 𝑢, 𝑣 < 3𝑛 .
In base 3, 𝑢 and 𝑣 are represented as:
𝑢 = 𝑎0 + 𝑎1 ⋅ 31 +. . . +𝑎𝑛−1 ⋅ 3𝑛−1
𝑣 = 𝑏0 + 𝑏1 ⋅ 31 +. . . +𝑏𝑛−1 ⋅ 3𝑛−1
where 0 ≤ 𝑎𝑖 , 𝑏𝑖 < 3.
Let define the function 𝑓 as follows:
𝑓(𝑢, 𝑣) = 𝑡[0][𝑎0 ][𝑏0 ] + 𝑡[1][𝑎1 ][𝑏1 ] ⋅ 21 +. . . +𝑡[𝑛 − 1][𝑎𝑛−1 ][𝑏𝑛−1 ] ⋅ 2𝑛−1
It is straight-forward to show that 0 ≤ 𝑓(𝑢, 𝑣) < 2𝑛 .
Your task is to calculate the array 𝑐, defined as follows:

𝑐𝑖 = ∑ 𝑎𝑢 ⋅ 𝑏𝑣
𝑓(𝑢,𝑣)=𝑖

Input
The first line contains 𝑛 (0 ≤ 𝑛 ≤ 11).
The next 𝑛 lines of the input represents the binary array 𝑡. The 𝑖𝑡ℎ line contains 9 integers:
𝑡[𝑖 − 1][0][0], 𝑡[𝑖 − 1][0][1], 𝑡[𝑖 − 1][0][2], 𝑡[𝑖 − 1][1][0], 𝑡[𝑖 − 1][1][1],
𝑡[𝑖 − 1][1][2], 𝑡[𝑖 − 1][2][0], 𝑡[𝑖 − 1][2][1], 𝑡[𝑖 − 1][2][2], separated by spaces.
It is guaranteed that all elements of 𝑡 are either 0 or 1, and 𝑡[𝑖][𝑥][𝑦] = 𝑡[𝑖][𝑦][𝑥].
The next line contains 3𝑛 space-separated integers: 𝑎0 , 𝑎1 , . . . , 𝑎3𝑛 −1 . It is guaranteed that
0 ≤ 𝑎𝑖 ≤ 109 .
The next line contains 3𝑛 space-separated integers: 𝑏0 , 𝑏1 , . . . , 𝑏3𝑛 −1 . It is guaranteed that
0 ≤ 𝑏𝑖 ≤ 109 .

Output
Print 2𝑛 space-separated integers on a single line: 𝑐0 , 𝑐1 , . . . , 𝑐2𝑛 −1 modulo 109 + 7.

8
The 2020 ICPC Vietnam Southern Provincial
Programming Contest
University of Science, VNU-HCM
October 25, 2020

Sample Input Sample Output


1 72 24
0 0 0 0 0 0 0 1
0 0 6
4 8 4

S-ar putea să vă placă și