def get_score_ks_fast(n_alpha: np.ndarray, no_records: np.ndarray, alpha: np.ndarray) -> np.ndarray:
        """
        KolmarovSmirnov

        :param n_alpha: Number of records less than alpha.
        :param no_records: Number of records.
        :param alpha: Alpha threshold.
        :return: Score.
        """
        score = np.zeros(alpha.shape[0])
        inds = n_alpha > no_records * alpha
        score[inds] = np.true_divide(n_alpha[inds] - no_records[inds] * alpha[inds], np.sqrt(no_records[inds]))
        return score

        KolmarovSmirnov

        :param n_alpha: Number of records less than alpha.
        :param no_records: Number of records.
        :param alpha: Alpha threshold.
        :return: Score.
        
art/defences/detector/evasion/subsetscanning/scoring_functions.py