aboutsummaryrefslogtreecommitdiff
path: root/challenge-159/lubos-kolouch/python/ch-2.py
blob: b5ab8e6d88de52ab7de028360917f4a71ab86264 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
""" Challenge 159 Task 2"""
from sympy.ntheory import factorint


def get_moebius_nr(what: int):
    """Get the moebius nr"""
    factors = factorint(what)

    if any(value > 1 for value in factors.values()):
        return 0

    if len(factors) % 2 == 0:
        return 1

    return -1


assert get_moebius_nr(5) == -1
assert get_moebius_nr(10) == 1
assert get_moebius_nr(20) == 0