## Zadanie Napisać program, który dla pierścienia `ℤ/nℤ[x]/(f = a₀ + a₁x¹+ ...+ aₖxᵏ)` znajdzie wszystkie 1. elementy odwracalne, 2. dzielniki zera, 3. elementy nilpotentne, 4. elementy idempotentne. - INPUT: `n [a₀,a₁,...,aₖ]` - OUTPUT: lista zawierająca cztery powyższe listy elementów (wielomianów, podanych jako listy współczynników) ### Przykłady: 1. `ℤ/2ℤ[x]/(x² + x + 1)`, który jest ciałem, tzn. `0` jest jedynym elementem nilpotentnym i jedynym dzielnikiem zera: * INPUT: `2 [1,1,1]` * OUTPUT: ```shell [ [[1], [0,1], [0,1], [1,1]], # odwracalne [[0]], # dzielniki zera [[0]], # nilpotenty [[1]] # idempotenty ] ``` 1. `ℤ/5ℤ[x]/(2x³ + 2x² + x + 1)` * INPUT: `3, [1,1,2,2]` * OUTPUT: ```sh [ [[1], [2], [0, 1], [0, 2], [0, 0, 1], [1, 0, 1], [2, 1, 1], [2, 2, 1], [0, 0, 2], [2, 0, 2], [1, 1, 2], [1, 2, 2]], # odwracalne [[0], [1, 1], [2, 1], [1, 2], [2, 2], [2, 0, 1], [0, 1, 1], [1, 1, 1], [0, 2, 1], [1, 2, 1], [1, 0, 2], [0, 1, 2], [2, 1, 2], [0, 2, 2], [2, 2, 2]], # dzielniki zera [[0], [2, 0, 1], [1, 0, 2]], # nilpotenty [[0], [1], [1, 2, 1], [0, 1, 2]] # idempotenty ] ``` ### Warunki punktacji * program musi być typu wsadowego, tj. uruchamiany z linii komend; * program musi się działać (i kompilować) na serwerze [LTS](https://laboratoria.wmi.amu.edu.pl/en/uslugi/serwer-terminalowy/lts) UWAGA: **NIE** przyjmuję squashed pulls (z jednym commitem) ### Termin 28.06.2018