def perm2cycles_without_fixed(perm):
    """
    Convert permutation in one-line notation to permutation in cycle notation without fixed points

    :param perm: Permutation in one-line notation
    :type perm: list

    :return: Returns permutation in cycle notation without fixed points
    :rtype: list
    """
    cycles = []
    used = []

    for x in range(1, max(perm) + 1):
        if x in used: continue

        temp = []
        temp.append(x)
        used.append(x)

        i = x

        while True:
            i = perm[i - 1]
            if i == x: break
            temp.append(i)
            used.append(i)

        if len(temp) > 1: cycles.append(temp)

    return cycles