eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Два замість трьох

Два замість трьох

Нехай є два масиви дійсних чисел: \textbf{X = (x_0, x_1, ..., x_\{n-1\})} та \textbf{Y = (y_0, y_1, ..., y_\{n-1\})}. Кожен масив містить рівно \textbf{2^30} елементів (значить \textbf{n = 2^30}). Позначимо \textbf{z_\{k \}= x_\{k \}+ iy_k}, \textbf{k = 0}, \textbf{1}, ..., \textbf{2^30-1}. Для \textbf{z_k} вже проведено дискретне перетворення Фур'є і відомо, що \includegraphics{https://static.e-olymp.com/content/78/788d6838a40fad3827d0f52b3d3058a6497b7f12.jpg} Нехай \textbf{A = DFT_n(X)}, \textbf{B = DFT_n(Y)}. Ваша задача --- визначати \textbf{A_k} та \textbf{B_k} за заданим індексом \textbf{k}. \InputFile У першому рядку вхідних даних записані цілі числа \textbf{A}, \textbf{B}, \textbf{C}, \textbf{D} (\textbf{1} ≤ \textbf{A}, \textbf{B}, \textbf{C}, \textbf{D} ≤ \textbf{1000}). У другому рядку вхідних даних записано ціле число \textbf{q} (\textbf{1} ≤ \textbf{q} ≤ \textbf{10^5}). У наступному рядку записано \textbf{q} цілих чисел через пропуск --- індекси, для яких потрібно порахувати \textbf{A_k} та \textbf{B_k} (кожен з індексів не менший \textbf{0} і не більший \textbf{2^30-1}). \OutputFile Виведіть рівно \textbf{q} рядків. У кожному з \textbf{q} рядків виводьте чотири числа: \textbf{real(A_k)}, \textbf{imag(A_k)}, \textbf{real(B_k)}, \textbf{imag(B_k)}. Числа у рядку відокремлюйте пропусками. Відповіді для різних індексів \textbf{k} відокремлюйте переведеннями рядка. Виводьте числа з відносною чи абсолютною похибкою не більше \textbf{10^\{-6\}}.
Ліміт часу 2 секунди
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
5 4 30 20
5
0 1 17 1000000000 7
Вихідні дані #1
0.0160000000 0.0000000000 0.4000000000 0.0000000000
0.3160000000 0.1000000000 0.2000000000 0.2750000000
0.3160000000 0.0000000000 0.7000000000 -0.1250000000
0.3160000000 0.2000000000 0.2000000000 0.3000000000
0.3160000000 0.0000000000 0.7000000000 0.1250000000
Автор Євгений Соболєв
Джерело III Міжнародна Літня школа програмування 2013 м. Севастополь