Визначення
Ви можете пропустити цю частину, якщо ви вже знаєте визначення груп , кінцевих груп та підгруп .
Групи
В абстрактній алгебрі, А група є кортеж (G, *) , де G являє собою набір і * є функцією G × G → G таким чином, що має місце наступне:
Закриття: для всіх x, y в G , x ∗ y також у G (мається на увазі через те, що ∗ - функція G × G → G ).
Асоціативність: для всіх x, y, z в G , (x ∗ y) ∗ z = x ∗ (y ∗ z) .
Ідентичність: існує елемент e в G такий, що для всіх x в G , x ∗ e = x = e ∗ x .
Зворотне: для кожного x у G існує елемент y в G такий, що x ∗ y = e = y ∗ x , де e - ідентичний елемент, згаданий у попередній точці кулі.
Кінцеві групи
Кінцева група являє собою групу (G, *) , де G кінцева, тобто має кінцеве число елементів.
Підгрупи
Підгрупа (Н, *) групи (G, *) така , що Н являє собою підмножина G (не обов'язково власне підмножина) і (H, *) також є групою (тобто задовольняє критеріям 4 вище).
Приклади
Розглянемо двогранну групу D 3 (G, ∗), де G = {1, A, B, C, D, E} і ∗ визначено нижче (така таблиця називається таблицею Кейлі ):
∗ | 1 ABCDE - + ---------------------- 1 | 1 ABCDE А | AB 1 DEC Б | B 1 AECD C | CED 1 BA Д | DCEA 1 B Е | EDCBA 1
У цій групі особистість - 1 . Крім того, A і B є оберненими один до одного, тоді як 1 , C , D і E є інверсами самих себе відповідно (обернена 1 дорівнює 1 , обернена C - C , обернена D - D , і обернена E - E ).
Тепер ми можемо перевірити, що (H, ∗) де H = {1, A, B} є підгрупою (G, ∗) . Для закриття зверніться до таблиці нижче:
∗ | 1 AB - + ---------- 1 | 1 AB А | AB 1 Б | Б 1 А
де всі можливі пари елементів в Н при * дають член в H .
Асоціативність не вимагає перевірки, так як елементи H є елементами G .
Особистість - 1 . Це має бути однаково з груповою ідентичністю. Також особа в групі повинна бути унікальною. (Ви можете це довести?)
Для зворотного, перевірити , що зворотна А це В , який є членом H . Зворотний B є , який також є членом H . Інверсія 1 все ще є самою, що не вимагає перевірки.
Завдання
Опис
Давши скінчену групу (G, ∗) , знайдіть кількість її підгруп.
Вхідні дані
Для групи (G, *) , ви отримаєте 2D масив розміру N × N , де N є число елементів в G . Припустимо, що індекс 0
- елемент ідентичності. 2D масив буде представляти таблицю множення. Наприклад, для групи вище, ви отримаєте такий двовимірний масив:
[[0, 1, 2, 3, 4, 5],
[1, 2, 0, 4, 5, 3],
[2, 0, 1, 5, 3, 4],
[3, 5, 4, 0, 2, 1],
[4, 3, 5, 1, 0, 2],
[5, 4, 3, 2, 1, 0]]
Наприклад, ви можете бачити, що 3 ∗ 1 = 5, тому що a[3][1] = 5
, де a
2D масив вище.
Примітки:
- Можна використовувати 1-індексований 2D масив.
- Рядок і стовпець для ідентичності можна опустити.
- Ви можете використовувати інші формати, як вважаєте за потрібне, але він повинен бути послідовним. .
Вихідні дані
Позитивне число, що представляє кількість підгруп у групі.
Наприклад, для вищезгаданої групи (H, ∗) є підгрупою (G, ∗), коли H =
- {1}
- {1, A, B}
- {1, C}
- {1, D}
- {1, E}
- {1, A, B, C, D, E}
Тому існує 6 підгруп, і ваш результат для цього прикладу повинен бути 6
.
Підказки
Ви можете прочитати статті, до яких я посилався. Ці статті містять теореми про групи та підгрупи, які можуть бути корисними для вас.
Оцінка балів
Це код-гольф . Відповідь з найнижчою кількістю виграшних байтів.
0
до ідентифікаційного елемента, то оператор може заплутатись як опис множення ...