Примітивний елемент кінцевого поля є утворює мультипликативной групи поля. Іншими словами, alphaв F(q)називається примітивним елементом, якщо це первісний q−1корінь єдності в Росії F(q). Це означає, що всі ненульові елементи елемента F(q)можуть бути записані як alpha^iдля деякого (додатного) цілого числа i.
Усі елементи поля F_{2^k}можна записати як многочлени ступеня максимум k-1з коефіцієнтами, які є 1або 0. Для того, щоб зробити це повною, ваш код також повинен вивести невідводимий многочлен ступеня, kякий визначає поле, яке ви використовуєте.
Завдання - код запису, який виводить примітивний елемент F_{2^k}на ваш вибір для кожного k = 1 .. 32по порядку.
Висновок повинен просто перелічити kкоефіцієнти примітивного елемента в будь-якому форматі, який вам подобається, а потім на окремому рядку k+1елементи невідворотного многочлена. Будь-ласка, розділіть виходи для кожного значення, kякщо це можливо.
Ваш код може зайняти стільки часу, скільки вам подобається, але ви повинні запустити його до завершення, перш ніж надсилати відповідь.
Ви не можете використовувати будь-яку вбудовану або бібліотечну функцію, яка повертає примітивні елементи кінцевого поля або перевіряє, чи елемент примітивний.
Приклад
Бо k = 1єдиним примітивним елементом є 1.
Бо k = 2ми маємо F_4. 4 елемента, {0, 1, x, x + 1}значить, є два примітивні елементи xі x + 1. Таким чином код може вивести
1 1
1 1 1
як коефіцієнти, наприклад, коли другий рядок є невідводимим многочленом, який у даному випадку x^2+x+1має коефіцієнти 1 1 1.