Given a number n as input how to find the (all the primitive roots of n) % n if n is prime. please give me some hint how can i calculate the primitive roots.. TIA.
# | User | Rating |
---|---|---|
1 | tourist | 3985 |
2 | jiangly | 3814 |
3 | jqdai0815 | 3682 |
4 | Benq | 3529 |
5 | orzdevinwang | 3526 |
6 | ksun48 | 3517 |
7 | Radewoosh | 3410 |
8 | hos.lyric | 3399 |
9 | ecnerwala | 3392 |
9 | Um_nik | 3392 |
# | User | Contrib. |
---|---|---|
1 | cry | 169 |
2 | maomao90 | 162 |
2 | Um_nik | 162 |
4 | atcoder_official | 161 |
5 | djm03178 | 158 |
6 | -is-this-fft- | 157 |
7 | adamant | 155 |
8 | awoo | 154 |
8 | Dominater069 | 154 |
10 | luogu_official | 151 |
Name |
---|
in this spoj problem how can i find the (product all the primitive roots of n) % n without generating all the primitive roots of n ? any hint please...
For your question: sum of numbers relatively prime and less than N is Nφ(N) / 2. (Because if gcd(x, N) = 1 then gcd(N - x, N) = 1). But since for any primitive root g, gi is primitive root if and only if gcd(i, φ(N)) = 1. So their product will be gφ(φ (N)) * φ (N) / 2 which is ( - 1)φ(φ(n)) since g is primitive root. For you particular case it is -1.