
    Design an algorithm that analyzes a sequence of assignment difficulty levels to find the most challenging continuous stretch of questions when the assignment pattern is repeated across multiple practice rounds. Given historical student performance scores and the number of times the assignment will be repeated in the semester, determine the maximum cumulative difficulty students will face in any consecutive sequence of questions.
    

    
def max_sub_array_sum_repeated(a, n, k):
    """
    Design an algorithm that analyzes a sequence of assignment difficulty levels to find the most challenging continuous stretch of questions when the assignment pattern is repeated across multiple practice rounds. Given historical student performance scores and the number of times the assignment will be repeated in the semester, determine the maximum cumulative difficulty students will face in any consecutive sequence of questions.
    

    """
def max_sub_array_sum_repeated(a, n, k):
    """
    Design an algorithm that analyzes a sequence of assignment difficulty levels to find the most challenging continuous stretch of questions when the assignment pattern is repeated across multiple practice rounds. Given historical student performance scores and the number of times the assignment will be repeated in the semester, determine the maximum cumulative difficulty students will face in any consecutive sequence of questions.
    

    """
    max_so_far = -2147483648
    max_ending_here = 0
    for i in range(n * k):
        max_ending_here = max_ending_here + a[i % n]
        if max_so_far < max_ending_here:
            max_so_far = max_ending_here
        if max_ending_here < 0:
            max_ending_here = 0
    return max_so_far