def _extract_single_status()

in run_tests/scoring.py [0:0]


def _extract_single_status(score: float, feedback: str) -> str:
    """
    Determines the status code based on the score and feedback message.
    
    Args:
        score: The numeric score (0.0 to 1.0)
        feedback: The feedback message from the execution
        
    Returns:
        str: Status code ('CE', 'MLE', 'TLE', 'WA', 'RE', 'AC', or 'PA')
    """
    if score == 0.0:
        if "Compilation error" in feedback:
            return 'CE'
        elif "Memory limit exceeded" in feedback:
            return 'MLE'
        elif "Time limit exceeded" in feedback:
            return 'TLE'
        elif "Output isn't correct" in feedback:
            return 'WA'
        else:
            return 'RE'
    elif score == 1.0:
        return 'AC'
    else:
        return 'PA'